namespace GB5DailyBuild; internal sealed class DeployFlags { public string Windows { get; set; } = "Y"; public string Linux { get; set; } = "Y"; public string Docker { get; set; } = "Y"; } internal sealed class WindowsDeploySettings { public string Path { get; set; } = @"D:\GB5DailyBuild"; // Used to auto-reconnect the UNC share via `net use` before every deploy, // since net use sessions can silently drop (reboot, network blip, credential // expiry) even when set up with /persistent:yes. Leave blank for a local // (non-UNC) path where no authentication is needed. public string? Username { get; set; } public string? Password { get; set; } } internal sealed class LinuxDeploySettings { public string Host { get; set; } = "217.217.250.150"; public string User { get; set; } = "redmine"; // Password-based auth via sshpass (requires `choco install sshpass` once per // machine) - shared across all users via this config file, so no per-user // SSH key generation/distribution is needed. Leave SshKeyPath set to fall // back to key-based auth instead if Password is blank. public string? Password { get; set; } public string? SshKeyPath { get; set; } = @"%USERPROFILE%\.ssh\gb5_deploy_key"; } internal sealed class DockerDeploySettings { public string Host { get; set; } = "217.216.78.142"; public string User { get; set; } = "root"; public string? Password { get; set; } public string? SshKeyPath { get; set; } = @"%USERPROFILE%\.ssh\gb5_docker_key3"; }