Introduce name config argument (#217)

This commit is contained in:
Julio Barba
2019-12-11 13:26:06 -05:00
committed by GitHub
parent 275ab753a1
commit a3c6a8c201
5 changed files with 35 additions and 37 deletions

View File

@@ -90,9 +90,9 @@ namespace GitHub.Runner.Common
//validArgs array as well present in the CommandSettings.cs
public static class Args
{
public static readonly string Agent = "agent";
public static readonly string Auth = "auth";
public static readonly string MonitorSocketAddress = "monitorsocketaddress";
public static readonly string Name = "name";
public static readonly string Pool = "pool";
public static readonly string SslCACert = "sslcacert";
public static readonly string SslClientCert = "sslclientcert";

View File

@@ -42,9 +42,9 @@ namespace GitHub.Runner.Listener
private readonly string[] validArgs =
{
Constants.Runner.CommandLine.Args.Agent,
Constants.Runner.CommandLine.Args.Auth,
Constants.Runner.CommandLine.Args.MonitorSocketAddress,
Constants.Runner.CommandLine.Args.Name,
Constants.Runner.CommandLine.Args.Password,
Constants.Runner.CommandLine.Args.Pool,
Constants.Runner.CommandLine.Args.SslCACert,
@@ -170,15 +170,6 @@ namespace GitHub.Runner.Listener
//
// Args.
//
public string GetAgentName()
{
return GetArgOrPrompt(
name: Constants.Runner.CommandLine.Args.Agent,
description: "Enter the name of runner:",
defaultValue: Environment.MachineName ?? "myagent",
validator: Validators.NonEmptyValidator);
}
public string GetAuth(string defaultValue)
{
return GetArgOrPrompt(
@@ -206,6 +197,15 @@ namespace GitHub.Runner.Listener
validator: Validators.NonEmptyValidator);
}
public string GetRunnerName()
{
return GetArgOrPrompt(
name: Constants.Runner.CommandLine.Args.Name,
description: "Enter the name of runner:",
defaultValue: Environment.MachineName ?? "myrunner",
validator: Validators.NonEmptyValidator);
}
public string GetToken()
{
return GetArgOrPrompt(

View File

@@ -214,7 +214,7 @@ namespace GitHub.Runner.Listener.Configuration
TaskAgent agent;
while (true)
{
runnerSettings.AgentName = command.GetAgentName();
runnerSettings.AgentName = command.GetRunnerName();
_term.WriteLine();

View File

@@ -1,11 +1,9 @@
using GitHub.Runner.Listener;
using GitHub.Runner.Listener.Configuration;
using GitHub.Runner.Common.Util;
using Moq;
using System;
using System.Runtime.CompilerServices;
using Xunit;
using GitHub.Runner.Sdk;
namespace GitHub.Runner.Common.Tests
{
@@ -18,45 +16,45 @@ namespace GitHub.Runner.Common.Tests
[Fact]
[Trait("Level", "L0")]
[Trait("Category", nameof(CommandSettings))]
public void GetsArg()
public void GetsNameArg()
{
using (TestHostContext hc = CreateTestContext())
{
// Arrange.
var command = new CommandSettings(hc, args: new string[] { "--agent", "some agent" });
var command = new CommandSettings(hc, args: new string[] { "--name", "some runner" });
// Act.
string actual = command.GetAgentName();
string actual = command.GetRunnerName();
// Assert.
Assert.Equal("some agent", actual);
Assert.Equal("some runner", actual);
}
}
[Fact]
[Trait("Level", "L0")]
[Trait("Category", nameof(CommandSettings))]
public void GetsArgFromEnvVar()
public void GetsNameArgFromEnvVar()
{
using (TestHostContext hc = CreateTestContext())
{
try
{
// Arrange.
Environment.SetEnvironmentVariable("ACTIONS_RUNNER_INPUT_AGENT", "some agent");
Environment.SetEnvironmentVariable("ACTIONS_RUNNER_INPUT_NAME", "some runner");
var command = new CommandSettings(hc, args: new string[0]);
// Act.
string actual = command.GetAgentName();
string actual = command.GetRunnerName();
// Assert.
Assert.Equal("some agent", actual);
Assert.Equal(string.Empty, Environment.GetEnvironmentVariable("ACTIONS_RUNNER_INPUT_AGENT") ?? string.Empty); // Should remove.
Assert.Equal("some agent", hc.SecretMasker.MaskSecrets("some agent"));
Assert.Equal("some runner", actual);
Assert.Equal(string.Empty, Environment.GetEnvironmentVariable("ACTIONS_RUNNER_INPUT_NAME") ?? string.Empty); // Should remove.
Assert.Equal("some runner", hc.SecretMasker.MaskSecrets("some runner"));
}
finally
{
Environment.SetEnvironmentVariable("ACTIONS_RUNNER_INPUT_AGENT", null);
Environment.SetEnvironmentVariable("ACTIONS_RUNNER_INPUT_NAME", null);
}
}
}
@@ -314,26 +312,26 @@ namespace GitHub.Runner.Common.Tests
var command = new CommandSettings(hc, args: new string[] { "--unattended" });
_promptManager
.Setup(x => x.ReadValue(
Constants.Runner.CommandLine.Args.Agent, // argName
Constants.Runner.CommandLine.Args.Name, // argName
"Enter the name of runner:", // description
false, // secret
Environment.MachineName, // defaultValue
Validators.NonEmptyValidator, // validator
true)) // unattended
.Returns("some agent");
.Returns("some runner");
// Act.
string actual = command.GetAgentName();
string actual = command.GetRunnerName();
// Assert.
Assert.Equal("some agent", actual);
Assert.Equal("some runner", actual);
}
}
[Fact]
[Trait("Level", "L0")]
[Trait("Category", nameof(CommandSettings))]
public void PromptsForAgent()
public void PromptsForRunnerName()
{
using (TestHostContext hc = CreateTestContext())
{
@@ -341,19 +339,19 @@ namespace GitHub.Runner.Common.Tests
var command = new CommandSettings(hc, args: new string[0]);
_promptManager
.Setup(x => x.ReadValue(
Constants.Runner.CommandLine.Args.Agent, // argName
Constants.Runner.CommandLine.Args.Name, // argName
"Enter the name of runner:", // description
false, // secret
Environment.MachineName, // defaultValue
Validators.NonEmptyValidator, // validator
false)) // unattended
.Returns("some agent");
.Returns("some runner");
// Act.
string actual = command.GetAgentName();
string actual = command.GetRunnerName();
// Assert.
Assert.Equal("some agent", actual);
Assert.Equal("some runner", actual);
}
}
@@ -766,8 +764,8 @@ namespace GitHub.Runner.Common.Tests
args: new string[] {
"configure",
"--unattended",
"--agent",
"test agent" });
"--name",
"test runner" });
// Assert.
Assert.True(command.Validate().Count == 0);

View File

@@ -160,7 +160,7 @@ namespace GitHub.Runner.Common.Tests.Listener.Configuration
"--acceptteeeula",
#endif
"--url", _expectedServerUrl,
"--agent", _expectedAgentName,
"--name", _expectedAgentName,
"--pool", _expectedPoolName,
"--work", _expectedWorkFolder,
"--auth", _expectedAuthType,