public void Clean(ICommandExecute commandExecute) { var commandline = "docker rm -f dev-traefik"; commandExecute.Command(commandline); Thread.Sleep(3000); }
public void CleanMantisNoTls(ICommandExecute execute) { var commandline = "docker rm -f dev-mantis"; execute.Command(commandline); Thread.Sleep(3000); }
public void CleanVaultNoTls(ICommandExecute execute) { var commandline = "docker rm -f dev-vault"; execute.Command(commandline); Thread.Sleep(3000); }
public void InstallMantisTls(ICommandExecute execute) { // get dockerfile from git var volumes = ""; var env = ""; var commandline = "docker run -d " + env + volumes + " -p 8200:8200 --name=dev-mantis vimagick/mantisbt"; Console.WriteLine(commandline); execute.Command(commandline); }
public void InstallDocker(ICommandExecute execute) { // How to run sudo commands // https://stackoverflow.com/questions/41555597/how-to-run-commands-by-sudo-and-enter-password-by-ssh-net-c-sharp var outputInstall = execute.SudoScript(this.script, "installdocker.sh"); if (execute is ISshClient) { ((ISshClient)execute).SudoReboot(); } }
public async Task CloneOrPull(ICommandExecute execute, Uri gitUri, string directory) { await Task.CompletedTask; var cmd = "[ -d \"{directory}\" ] && echo 'Found' || echo 'Not found'"; if (execute.Command(cmd) == "Not Found") { Clone(execute, gitUri, directory); } else { Pull(execute, directory); } }
public void InstallTraefik(ICommandExecute commandExecute, string tomlPath) { var traefiktoml = @" [api] [file] filename = ""rules.toml"" "; var traefikTomlFilename = Path.Combine(tomlPath, "traefik.toml"); commandExecute.WriteFile(traefiktoml, traefikTomlFilename); commandExecute.WriteFile("", Path.Combine(tomlPath, "rules.toml")); var commandline = "docker run -d -p 8080:8080 -p 80:80 -v " + traefikTomlFilename + ":/etc/traefik/traefik.toml --name=dev-traefik traefik:1.5"; commandExecute.Command(commandline); Thread.Sleep(3000); }
public void Check(ICommandExecute execute) { StepAssert.Contains("\"initialized\":true,\"sealed\":false", execute.Command("curl http://localhost:8200/v1/sys/health")); // login for test user var data = " --data '{\"password\": \"test\"}' "; var loginCmd = "curl --request POST " + data + " http://127.0.0.1:8200/v1/auth/userpass/login/test "; dynamic loginResponse = JObject.Parse(execute.Command(loginCmd)); var token = (string)loginResponse.auth.client_token; StepAssert.IsTrue(!string.IsNullOrWhiteSpace(token)); /* * // Try to read the test value with the test user/password * var header = " --header \"X-Vault-Token: " + token + "\" "; * var readCmd = "curl " + token + " http://127.0.0.1:8200/v1/secret/test"; * var readCmdResponse = execute.Command(readCmd); * StepAssert.AreEqual("testValue", readCmdResponse); */ }
public void Check(ICommandExecute execute) { }
public void Check(ICommandExecute commandExecute) { var cmdResponse = commandExecute.Command("curl -s 127.0.0.1:8080"); StepAssert.Contains("<a href=\"/dashboard/\">", cmdResponse); }
public Position Move(Rover rover) { _commandExecute = _commandFactory.GetCommandHandler(rover.Command.ToString()); return _commandExecute.ExecuteCommand(rover); }
public myCommand(ICommandExecute onExecuteMethod, ICommandCanExecute onCanExecuteMethod) { _execute = onExecuteMethod; _canexecute = onCanExecuteMethod; }
public void SetCommandExecute(ICommandExecute commandExecute) { this.commandExecute = commandExecute; }
public void Pull(ICommandExecute execute, string directory) { var cmd = $"git --git-dir=\"{directory}\" pull"; execute.Command(cmd); }
public void InstallVaultNoTls(ICommandExecute execute, IVaultSealKeys vaultSealKeys) { var vaultLocalConfig = "{\"backend\":{\"file\":{\"path\":\"/vault/file\"}}, \"listener\":{\"tcp\":{\"address\":\"0.0.0.0:8200\", \"tls_disable\":\"1\"}}}"; var env = " -e 'VAULT_LOCAL_CONFIG=" + vaultLocalConfig + "'" + " -e 'VAULT_ADDR=http://127.0.0.1:8200'" + " -e 'VAULT_REDIRECT_ADDR=http://127.0.0.1:8201' "; var volumes = ""; //var commandline = "docker run --cap-add=IPC_LOCK -d " + env + " -p 127.0.0.1:8200:8200 --name=dev-vault vault server"; var commandline = "docker run --cap-add=IPC_LOCK -d " + env + volumes + " -p 8200:8200 --name=dev-vault vault server"; Console.WriteLine(commandline); execute.Command(commandline); Thread.Sleep(3000); var initResponse = execute.Command("curl --request PUT --data '{\"secret_shares\":5, \"secret_threshold\":3}' http://localhost:8200/v1/sys/init"); dynamic initResult = JObject.Parse(initResponse); //var lines = initResult.Split(new string[]{"\n"}, StringSplitOptions.RemoveEmptyEntries); //var sealkeysLines = lines.Where(l => l.StartsWith("Unseal Key")).ToList(); //var sealkeys = sealkeysLines.Select(s => s.Substring("Unseal Key 1: ".Length)).ToList(); var sealkeys = new List <string>(); for (var i = 0; i < 5; ++i) { sealkeys.Add((string)initResult.keys[i]); } vaultSealKeys.SetSealKeys(sealkeys); //var rootTokenLine = lines.First(l => l.StartsWith("Initial Root Token: ")); //var rootToken = rootTokenLine.Substring("Initial Root Token: ".Length); var rootToken = (string)initResult.root_token; vaultSealKeys.SetRootToken(rootToken); string unseal = ""; for (var i = 0; i < 3; ++i) { //var cmd = "docker exec dev-vault vault operator unseal " + sealkeys[i]; var key = sealkeys[i]; unseal = execute.Command("curl --request PUT --data '{\"key\": \"" + key + "\"}' http://localhost:8200/v1/sys/unseal"); } var header = " --header \"X-Vault-Token: " + rootToken + "\" "; // create a test user password var data = " --data '{\"type\": \"userpass\", \"description\": \"Login with user password\"}' "; var enableAuthCmd = "curl " + header + " --request PUT " + data + " http://127.0.0.1:8200/v1/sys/auth/userpass "; Console.WriteLine(enableAuthCmd); var enableAuthResponse = execute.Command(enableAuthCmd); var capabilities = "capabilities = [\\\"create\\\", \\\"read\\\", \\\"update\\\", \\\"delete\\\", \\\"list\\\"]"; data = " --data '{\"policy\": \"path \\\"secret/test\\\" { " + capabilities + " }\"}' "; var policyCmd = "curl " + header + " --request PUT " + data + " http://127.0.0.1:8200/v1/sys/policy/test-policy "; Console.WriteLine(policyCmd); var policyResponse = execute.Command(policyCmd); data = " --data '{\"password\": \"test\", \"policies\": \"test-policy\" }' "; var userCmd = "curl " + header + " --request POST " + data + " http://127.0.0.1:8200/v1/auth/userpass/users/test "; Console.WriteLine(userCmd); execute.Command(userCmd); }
public void Build(ICommandExecute execute, string directory) { execute.Command("docker build " + directory); }
public void Clone(ICommandExecute execute, Uri gitUri, string directory) { var cmd = "git clone " + "\"" + gitUri.ToString() + "\" \"" + directory + "\""; execute.Command(cmd); }