in Configurator/Core/CLI/CommandLine.cs [493:557]
private static void PrintActionHelp(string actionName)
{
if (!Enum.TryParse(actionName, true, out ConfigurationType actionType))
{
return;
}
if (actionType != ConfigurationType.Configure
&& actionType != ConfigurationType.Reconfigure
&& actionType != ConfigurationType.Upgrade
&& actionType != ConfigurationType.Remove)
{
return;
}
var actionHelp = string.Empty;
switch (actionType)
{
case ConfigurationType.Configure:
actionHelp = Resources.CLIConfigureActionHelp;
break;
case ConfigurationType.Reconfigure:
actionHelp = Resources.CLIReconfigureActionHelp;
break;
case ConfigurationType.Upgrade:
actionHelp = Resources.CLIUpgradeActionHelp;
break;
case ConfigurationType.Remove:
actionHelp = Resources.CLIRemoveActionHelp;
break;
}
// Generate action options section.
var builder = new StringBuilder();
var options = GetOptionsForAction(actionType);
foreach (var option in options)
{
string aliases = "N/A";
string shortcut = "N/A";
string supportedValues = "N/A";
if (!string.IsNullOrEmpty(option.Shortcut))
{
shortcut = option.Shortcut;
}
if (option.Aliases != null
&& option.Aliases.Length > 0)
{
aliases = string.Join(",", option.Aliases);
}
if (option.SupportedValues != null
&& option.SupportedValues.Length > 0)
{
supportedValues = string.Join(",", option.SupportedValues);
}
builder.AppendLine($"- {option.Name}:{shortcut}:{aliases}:{supportedValues}:{option.Description}");
}
actionHelp = actionHelp.Replace("[options]", builder.ToString());
// Print action help.
Console.WriteLine(actionHelp);
}