diff options
author | WouterTinus <wouter.tinus@gmail.com> | 2019-01-10 16:01:47 +0100 |
---|---|---|
committer | WouterTinus <wouter.tinus@gmail.com> | 2019-01-10 16:01:47 +0100 |
commit | fa957b1a2ae06c1f603f47b22b8f46eb59e3a983 (patch) | |
tree | 368020b9e2d30342d13a7564aa466b5db6ed50c5 /src/main/Plugins/ValidationPlugins/Http/HttpValidationArgumentsProvider.cs | |
parent | f1866f4297f056f3732c56d23f18bd0c8bf3b08e (diff) | |
download | letsencrypt-win-simple-fa957b1a2ae06c1f603f47b22b8f46eb59e3a983.zip letsencrypt-win-simple-fa957b1a2ae06c1f603f47b22b8f46eb59e3a983.tar.gz letsencrypt-win-simple-fa957b1a2ae06c1f603f47b22b8f46eb59e3a983.tar.bz2 |
Store args and start with validation
Diffstat (limited to 'src/main/Plugins/ValidationPlugins/Http/HttpValidationArgumentsProvider.cs')
-rw-r--r-- | src/main/Plugins/ValidationPlugins/Http/HttpValidationArgumentsProvider.cs | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/main/Plugins/ValidationPlugins/Http/HttpValidationArgumentsProvider.cs b/src/main/Plugins/ValidationPlugins/Http/HttpValidationArgumentsProvider.cs new file mode 100644 index 0000000..ca2eee2 --- /dev/null +++ b/src/main/Plugins/ValidationPlugins/Http/HttpValidationArgumentsProvider.cs @@ -0,0 +1,41 @@ +using Fclp; +using PKISharp.WACS.Configuration; +using PKISharp.WACS.Services; + +namespace PKISharp.WACS.Plugins.ValidationPlugins.Http +{ + abstract class HttpValidationArgumentsProvider<T> : + BaseArgumentsProvider<T> + where T : HttpValidationArguments, new() + { + public override string Group => "Validation"; + public override void Configure(FluentCommandLineParser<T> parser) + { + parser.Setup(o => o.WebRoot) + .As("webroot") + .WithDescription("A web root to use for HTTP validation."); + parser.Setup(o => o.Warmup) + .As("warmup") + .WithDescription("Warm up websites before attempting HTTP validation."); + parser.Setup(o => o.ManualTargetIsIIS) + .As("manualtargetisiis") + .WithDescription("Will the HTTP validation be handled by IIS?"); + } + + public override bool Validate(ILogService log, T current, MainArguments main) + { + var active = + !string.IsNullOrEmpty(current.WebRoot) || + current.Warmup; + if (main.Renew && active) + { + log.Error("Validation parameters cannot be changed during a renewal. Recreate/overwrite the renewal or edit the .json file if you want to make changes."); + return false; + } + else + { + return true; + } + } + } +} |