summaryrefslogtreecommitdiffstats
path: root/src/main.lib/Plugins/ValidationPlugins/Dns/Script/ScriptArgumentsProvider.cs
blob: ab480b0c60aeff8b5437c1a1c672366e0cd4b689 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
using Fclp;
using PKISharp.WACS.Configuration;

namespace PKISharp.WACS.Plugins.ValidationPlugins.Dns
{
    internal class ScriptArgumentsProvider : BaseArgumentsProvider<ScriptArguments>
    {
        public override string Name => "Script";
        public override string Group => "Validation";
        public override string Condition => "--validationmode dns-01 --validation script";

        public override void Configure(FluentCommandLineParser<ScriptArguments> parser)
        {
            parser.Setup(o => o.DnsScript)
                .As("dnsscript")
                .WithDescription("Path to script that creates and deletes validation records, depending on its parameters. If this parameter is provided then --dnscreatescript and --dnsdeletescript are ignored.");
            parser.Setup(o => o.DnsCreateScript)
                .As("dnscreatescript")
                .WithDescription("Path to script that creates the validation TXT record.");
            parser.Setup(o => o.DnsCreateScriptArguments)
                .As("dnscreatescriptarguments")
                .WithDescription($"Default parameters passed to the script are {Script.DefaultCreateArguments}, but that can be customized using this argument.");
            parser.Setup(o => o.DnsDeleteScript)
                .As("dnsdeletescript")
                .WithDescription("Path to script to remove TXT record.");
            parser.Setup(o => o.DnsDeleteScriptArguments)
               .As("dnsdeletescriptarguments")
               .WithDescription($"Default parameters passed to the script are {Script.DefaultDeleteArguments}, but that can be customized using this argument.");
        }
    }
}