in fast-build-update-tool/internal/tools/ssh_command_runner.go [28:43]
func NewSSHCommandRunner(logger *slog.Logger, localUpdateScriptPath string, sshPort int32, sshKey ssh.Signer, instance *gamelift.Instance) (*SSHCommandRunner, error) {
updateScriptCommand, err := generateUpdateScriptCommand(localUpdateScriptPath, instance)
if err != nil {
return nil, err
}
return &SSHCommandRunner{
logger: logger.With("context", "SSHCommandRunner"),
sshPort: sshPort,
instanceIpAddress: instance.IpAddress,
instanceId: instance.InstanceId,
sshKey: sshKey,
updateScriptCommand: updateScriptCommand,
remoteUserName: string(config.RemoteUserForOperatingSystem(instance.OperatingSystem)),
}, nil
}