diff options
Diffstat (limited to 'src/main.lib/Plugins/InstallationPlugins/Script/Script.cs')
-rw-r--r-- | src/main.lib/Plugins/InstallationPlugins/Script/Script.cs | 45 |
1 files changed, 24 insertions, 21 deletions
diff --git a/src/main.lib/Plugins/InstallationPlugins/Script/Script.cs b/src/main.lib/Plugins/InstallationPlugins/Script/Script.cs index 5cb9df4..74cb1f7 100644 --- a/src/main.lib/Plugins/InstallationPlugins/Script/Script.cs +++ b/src/main.lib/Plugins/InstallationPlugins/Script/Script.cs @@ -22,28 +22,31 @@ namespace PKISharp.WACS.Plugins.InstallationPlugins public async Task Install(IEnumerable<IStorePlugin> store, CertificateInfo newCertificate, CertificateInfo oldCertificate) { - var defaultStoreType = store.First().GetType(); - var defaultStoreInfo = newCertificate.StoreInfo[defaultStoreType]; - var parameters = _options.ScriptParameters ?? ""; - parameters = parameters.Replace("{0}", newCertificate.SubjectName); - parameters = parameters.Replace("{1}", _renewal.PfxPassword?.Value); - parameters = parameters.Replace("{2}", newCertificate.CacheFile?.FullName); - parameters = parameters.Replace("{3}", defaultStoreInfo.Path); - parameters = parameters.Replace("{4}", newCertificate.Certificate.FriendlyName); - parameters = parameters.Replace("{5}", newCertificate.Certificate.Thumbprint); - parameters = parameters.Replace("{6}", newCertificate.CacheFile?.Directory.FullName); - parameters = parameters.Replace("{7}", _renewal.Id); + if (_options.Script != null) + { + var defaultStoreType = store.First().GetType(); + var defaultStoreInfo = newCertificate.StoreInfo[defaultStoreType]; + var parameters = _options.ScriptParameters ?? ""; + parameters = parameters.Replace("{0}", newCertificate.SubjectName); + parameters = parameters.Replace("{1}", _renewal.PfxPassword?.Value); + parameters = parameters.Replace("{2}", newCertificate.CacheFile?.FullName); + parameters = parameters.Replace("{3}", defaultStoreInfo.Path); + parameters = parameters.Replace("{4}", newCertificate.Certificate.FriendlyName); + parameters = parameters.Replace("{5}", newCertificate.Certificate.Thumbprint); + parameters = parameters.Replace("{6}", newCertificate.CacheFile?.Directory.FullName); + parameters = parameters.Replace("{7}", _renewal.Id); - parameters = parameters.Replace("{CachePassword}", _renewal.PfxPassword?.Value); - parameters = parameters.Replace("{CacheFile}", newCertificate.CacheFile?.FullName); - parameters = parameters.Replace("{CacheFolder}", newCertificate.CacheFile?.FullName); - parameters = parameters.Replace("{CertCommonName}", newCertificate.SubjectName); - parameters = parameters.Replace("{CertFriendlyName}", newCertificate.Certificate.FriendlyName); - parameters = parameters.Replace("{CertThumbprint}", newCertificate.Certificate.Thumbprint); - parameters = parameters.Replace("{StoreType}", defaultStoreInfo.Name); - parameters = parameters.Replace("{StorePath}", defaultStoreInfo.Path); - parameters = parameters.Replace("{RenewalId}", _renewal.Id); - await _client.RunScript(_options.Script, parameters); + parameters = parameters.Replace("{CachePassword}", _renewal.PfxPassword?.Value); + parameters = parameters.Replace("{CacheFile}", newCertificate.CacheFile?.FullName); + parameters = parameters.Replace("{CacheFolder}", newCertificate.CacheFile?.FullName); + parameters = parameters.Replace("{CertCommonName}", newCertificate.SubjectName); + parameters = parameters.Replace("{CertFriendlyName}", newCertificate.Certificate.FriendlyName); + parameters = parameters.Replace("{CertThumbprint}", newCertificate.Certificate.Thumbprint); + parameters = parameters.Replace("{StoreType}", defaultStoreInfo.Name); + parameters = parameters.Replace("{StorePath}", defaultStoreInfo.Path); + parameters = parameters.Replace("{RenewalId}", _renewal.Id); + await _client.RunScript(_options.Script, parameters); + } } public bool Disabled => false; |