upResult method
Runs pulumi up and returns a typed operation result.
Implementation
Future<AutomationUpResult> upResult({
bool yes = true,
bool skipPreview = true,
bool nonInteractive = true,
bool check = true,
bool captureEvents = true,
bool includeOutputs = true,
bool includeSummary = true,
bool showSummarySecrets = false,
AutomationEngineEventHandler? onEvent,
List<String> extraArgs = const <String>[],
}) async {
final args = <String>['up', '--stack', name];
if (yes) {
args.add('--yes');
}
if (skipPreview) {
args.add('--skip-preview');
}
if (nonInteractive) {
args.add('--non-interactive');
}
args.addAll(extraArgs);
final (result, events) = await _runStackCommand(
args,
check: check,
captureEvents: captureEvents,
onEvent: onEvent,
);
Map<String, AutomationOutputValue>? typedOutputs;
AutomationUpdateSummary? summary;
final effectiveShowSummarySecrets = workspace.remote
? false
: showSummarySecrets;
AutomationUpdateSummary? remoteSummary;
if (workspace.remote &&
result.succeeded &&
(includeOutputs || includeSummary)) {
remoteSummary = await _awaitTerminalRemoteSummary(
showSecrets: effectiveShowSummarySecrets,
);
}
if (includeOutputs && result.succeeded) {
typedOutputs = await outputsWithMetadata();
}
if (includeSummary && result.succeeded) {
summary =
remoteSummary ??
await infoSummary(showSecrets: effectiveShowSummarySecrets);
}
return AutomationUpResult(
commandResult: result,
events: events,
outputs: typedOutputs,
summary: summary,
);
}