Skip to content

Commit b4d8d0a

Browse files
authored
New activity output wrapper utils and execute step base (#467)
1 parent eaf978e commit b4d8d0a

File tree

26 files changed

+144
-41
lines changed

26 files changed

+144
-41
lines changed

src/commands/createContainerApp/createContainerApp.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import { webProvider } from "../../constants";
1010
import { ext } from "../../extensionVariables";
1111
import { ContainerAppItem } from "../../tree/ContainerAppItem";
1212
import type { ManagedEnvironmentItem } from "../../tree/ManagedEnvironmentItem";
13-
import { createActivityContext } from "../../utils/activityUtils";
13+
import { createActivityContext } from "../../utils/activity/activityUtils";
1414
import { localize } from "../../utils/localize";
1515
import { pickEnvironment } from "../../utils/pickItem/pickEnvironment";
1616
import { ImageSourceListStep } from "../deployImage/imageSource/ImageSourceListStep";

src/commands/createManagedEnvironment/LogAnalyticsCreateStep.ts

Lines changed: 36 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,32 +4,54 @@
44
*--------------------------------------------------------------------------------------------*/
55

66
import { LocationListStep } from "@microsoft/vscode-azext-azureutils";
7-
import { AzureWizardExecuteStep } from "@microsoft/vscode-azext-utils";
7+
import { GenericTreeItem } from "@microsoft/vscode-azext-utils";
88
import { Progress } from "vscode";
9-
import { ext } from "../../extensionVariables";
9+
import { activityFailContext, activityFailIcon, activitySuccessContext, activitySuccessIcon } from "../../constants";
10+
import { ExecuteActivityOutput, ExecuteActivityOutputStepBase } from "../../utils/activity/ExecuteActivityOutputStepBase";
11+
import { createActivityChildContext } from "../../utils/activity/activityUtils";
1012
import { createOperationalInsightsManagementClient } from "../../utils/azureClients";
1113
import { localize } from "../../utils/localize";
12-
import { nonNullProp, nonNullValue } from "../../utils/nonNull";
14+
import { nonNullProp } from "../../utils/nonNull";
1315
import { IManagedEnvironmentContext } from "./IManagedEnvironmentContext";
1416

15-
export class LogAnalyticsCreateStep extends AzureWizardExecuteStep<IManagedEnvironmentContext> {
17+
export class LogAnalyticsCreateStep extends ExecuteActivityOutputStepBase<IManagedEnvironmentContext> {
1618
public priority: number = 220;
1719

18-
public async execute(context: IManagedEnvironmentContext, progress: Progress<{ message?: string | undefined; increment?: number | undefined }>): Promise<void> {
20+
protected async executeCore(context: IManagedEnvironmentContext, progress: Progress<{ message?: string | undefined; increment?: number | undefined }>): Promise<void> {
1921
const opClient = await createOperationalInsightsManagementClient(context);
20-
const rg = nonNullValue(context.resourceGroup);
21-
const creatingLaw: string = localize('creatingLogAnalyticsWorkspace', 'Creating new Log Analytics workspace...');
22-
progress.report({ message: creatingLaw });
23-
ext.outputChannel.appendLog(creatingLaw);
24-
context.logAnalyticsWorkspace = await opClient.workspaces.beginCreateOrUpdateAndWait(
25-
nonNullProp(rg, 'name'), nonNullProp(context, 'newManagedEnvironmentName'), { location: (await LocationListStep.getLocation(context)).name });
22+
const resourceGroup = nonNullProp(context, 'resourceGroup');
23+
const workspaceName = nonNullProp(context, 'newManagedEnvironmentName');
24+
25+
const creating: string = localize('creatingLogAnalyticsWorkspace', 'Creating log analytics workspace...');
26+
progress.report({ message: creating });
2627

27-
const createdLaw: string = localize('createdLogAnalyticWorkspace', 'Successfully created new log analytic workspace.');
28-
ext.outputChannel.appendLog(createdLaw);
29-
void progress.report({ message: createdLaw });
28+
context.logAnalyticsWorkspace = await opClient.workspaces.beginCreateOrUpdateAndWait(
29+
nonNullProp(resourceGroup, 'name'), workspaceName, { location: (await LocationListStep.getLocation(context)).name });
3030
}
3131

3232
public shouldExecute(context: IManagedEnvironmentContext): boolean {
3333
return !context.logAnalyticsWorkspace;
3434
}
35+
36+
protected createSuccessOutput(context: IManagedEnvironmentContext): ExecuteActivityOutput {
37+
return {
38+
item: new GenericTreeItem(undefined, {
39+
contextValue: createActivityChildContext(['logAnalyticsCreateStep', activitySuccessContext]),
40+
label: localize('createWorkspace', 'Create log analytics workspace "{0}"', context.newManagedEnvironmentName),
41+
iconPath: activitySuccessIcon
42+
}),
43+
message: localize('createLogAnalyticsWorkspaceSuccess', 'Created log analytics workspace "{0}".', context.newManagedEnvironmentName)
44+
};
45+
}
46+
47+
protected createFailOutput(context: IManagedEnvironmentContext): ExecuteActivityOutput {
48+
return {
49+
item: new GenericTreeItem(undefined, {
50+
contextValue: createActivityChildContext(['logAnalyticsCreateStep', activityFailContext]),
51+
label: localize('createWorkspace', 'Create log analytics workspace "{0}"', context.newManagedEnvironmentName),
52+
iconPath: activityFailIcon
53+
}),
54+
message: localize('createLogAnalyticsWorkspaceFail', 'Failed to create log analytics workspace "{0}".', context.newManagedEnvironmentName)
55+
};
56+
}
3557
}

src/commands/createManagedEnvironment/createManagedEnvironment.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { AzureWizard, AzureWizardExecuteStep, AzureWizardPromptStep, IActionCont
88
import { AzureSubscription } from "@microsoft/vscode-azureresources-api";
99
import { appProvider, managedEnvironmentsId, operationalInsightsProvider } from "../../constants";
1010
import { ext } from "../../extensionVariables";
11-
import { createActivityContext } from "../../utils/activityUtils";
11+
import { createActivityContext } from "../../utils/activity/activityUtils";
1212
import { localize } from "../../utils/localize";
1313
import { IManagedEnvironmentContext } from "./IManagedEnvironmentContext";
1414
import { LogAnalyticsCreateStep } from "./LogAnalyticsCreateStep";

src/commands/deleteManagedEnvironment/deleteManagedEnvironment.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { AzureWizard, createSubscriptionContext, IActionContext } from "@microso
88
import { ext } from "../../extensionVariables";
99
import { ContainerAppItem } from "../../tree/ContainerAppItem";
1010
import type { ManagedEnvironmentItem } from "../../tree/ManagedEnvironmentItem";
11-
import { createActivityContext } from "../../utils/activityUtils";
11+
import { createActivityContext } from "../../utils/activity/activityUtils";
1212
import { localize } from "../../utils/localize";
1313
import { pickEnvironment } from "../../utils/pickItem/pickEnvironment";
1414
import { DeleteAllContainerAppsStep } from "../deleteContainerApp/DeleteAllContainerAppsStep";

src/commands/deployImage/imageSource/containerRegistry/acr/createAcr/createAcr.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { LocationListStep, ResourceGroupCreateStep } from "@microsoft/vscode-aze
77
import { AzureWizard, AzureWizardExecuteStep, AzureWizardPromptStep, IActionContext, createSubscriptionContext, nonNullValue, subscriptionExperience } from "@microsoft/vscode-azext-utils";
88
import { AzureSubscription } from "@microsoft/vscode-azureresources-api";
99
import { ext } from "../../../../../../extensionVariables";
10-
import { createActivityContext } from "../../../../../../utils/activityUtils";
10+
import { createActivityContext } from "../../../../../../utils/activity/activityUtils";
1111
import { localize } from "../../../../../../utils/localize";
1212
import { CreateAcrContext } from "./CreateAcrContext";
1313
import { RegistryCreateStep } from "./RegistryCreateStep";

src/commands/deployWorkspaceProject/deployWorkspaceProject.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import { ProgressLocation, window } from "vscode";
1010
import { appProvider, managedEnvironmentsId, operationalInsightsProvider, webProvider } from "../../constants";
1111
import { ext } from "../../extensionVariables";
1212
import { ContainerAppModel, isIngressEnabled } from "../../tree/ContainerAppItem";
13-
import { createActivityContext } from "../../utils/activityUtils";
13+
import { createActivityContext } from "../../utils/activity/activityUtils";
1414
import { localize } from "../../utils/localize";
1515
import { browseContainerApp } from "../browseContainerApp";
1616
import { ContainerAppCreateStep } from "../createContainerApp/ContainerAppCreateStep";
@@ -48,7 +48,7 @@ export async function deployWorkspaceProject(context: IActionContext): Promise<v
4848
...subscriptionContext,
4949
...await createActivityContext(),
5050
...defaultContextValues,
51-
// activityChildren: [],
51+
activityChildren: [],
5252
subscription,
5353
};
5454

src/commands/gitHub/disconnectRepo/disconnectRepo.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { getGitHubAccessToken } from "@microsoft/vscode-azext-github";
77
import { AzureWizard, AzureWizardExecuteStep, AzureWizardPromptStep, ITreeItemPickerContext, createSubscriptionContext } from "@microsoft/vscode-azext-utils";
88
import { ContainerAppsItem } from "../../../tree/ContainerAppsBranchDataProvider";
99
import { ActionsItem } from "../../../tree/configurations/ActionsItem";
10-
import { createActivityContext } from "../../../utils/activityUtils";
10+
import { createActivityContext } from "../../../utils/activity/activityUtils";
1111
import { localize } from "../../../utils/localize";
1212
import { pickContainerApp } from "../../../utils/pickItem/pickContainerApp";
1313
import { getContainerAppSourceControl } from "../connectToGitHub/getContainerAppSourceControl";

src/commands/ingress/disableIngress/disableIngress.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import { AzureWizard, AzureWizardPromptStep, IActionContext, createSubscriptionContext } from '@microsoft/vscode-azext-utils';
77
import { ext } from '../../../extensionVariables';
88
import type { ContainerAppsItem } from "../../../tree/ContainerAppsBranchDataProvider";
9-
import { createActivityContext } from '../../../utils/activityUtils';
9+
import { createActivityContext } from '../../../utils/activity/activityUtils';
1010
import { localize } from '../../../utils/localize';
1111
import { pickContainerApp } from "../../../utils/pickItem/pickContainerApp";
1212
import type { IngressContext } from '../IngressContext';

src/commands/ingress/editTargetPort/editTargetPort.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { AzureWizard, AzureWizardExecuteStep, AzureWizardPromptStep, createSubsc
77
import { ext } from "../../../extensionVariables";
88
import { IngressEnabledItem } from "../../../tree/configurations/IngressItem";
99
import type { ContainerAppItem } from "../../../tree/ContainerAppItem";
10-
import { createActivityContext } from "../../../utils/activityUtils";
10+
import { createActivityContext } from "../../../utils/activity/activityUtils";
1111
import { localize } from "../../../utils/localize";
1212
import { pickContainerApp } from "../../../utils/pickItem/pickContainerApp";
1313
import type { IngressContext } from "../IngressContext";

src/commands/ingress/enableIngress/enableIngress.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import { AzureWizard, AzureWizardPromptStep, createSubscriptionContext, IActionContext } from '@microsoft/vscode-azext-utils';
77
import { ext } from '../../../extensionVariables';
88
import type { ContainerAppsItem } from "../../../tree/ContainerAppsBranchDataProvider";
9-
import { createActivityContext } from '../../../utils/activityUtils';
9+
import { createActivityContext } from '../../../utils/activity/activityUtils';
1010
import { localize } from '../../../utils/localize';
1111
import { pickContainerApp } from "../../../utils/pickItem/pickContainerApp";
1212
import type { IngressContext } from "../IngressContext";

0 commit comments

Comments
 (0)