public async Task <int> RunAsync(AppOptions appOptions, UpgradeCommandOptions commandConfig) { var connectionInfo = ConnectionInfoHelper.CreateConnectionInfo(appOptions); var connection = connectionInfo.CreateClusterConnection(); var logger = new Logger(appOptions.Verbose); var register = new SfRestApi.Endpoints.Application(connection, logger); var upgradeOptions = commandConfig.ToApplicationModel(); var registerSuccess = await register.UpgradeAsync(upgradeOptions).ConfigureAwait(false); return(registerSuccess ? 0 : -1); }
public static ApplicationUpgrade ToApplicationModel(this UpgradeCommandOptions input) { return new ApplicationUpgrade { ApplicationName = input.ApplicationName, TargetVersion = input.TargetVersion, FailureAction = input.FailureAction, ForceRestart = input.ForceRestart, HealthCheckWaitDuration = input.HealthCheckWaitDuration, HealthCheckRetryTimeout = input.HealthCheckRetryTimeout, HealthCheckStableDuration = input.HealthCheckStableDuration, RollingUpgradeMode = input.RollingUpgradeMode }; }
public static void Configure(CommandLineApplication app) { app.Command("upgrade", application => { _appOptions = new AppOptionsRaw(application); _upgradeCommandOptions = new UpgradeCommandOptionsRaw(application); application.OnExecute(async() => { var appConfig = AppOptions.ValidateAndCreate(_appOptions); var commandConfig = UpgradeCommandOptions.VerifyAndCreateArgs(_upgradeCommandOptions); var command = new UpgradeCommand(); return(await command.RunAsync(appConfig, commandConfig).ConfigureAwait(false)); }); }); }