diff --git a/package.json b/package.json index a110c8018c..dce34a13af 100644 --- a/package.json +++ b/package.json @@ -86,10 +86,6 @@ "command": "vscode-docker.compose.down", "when": "isWorkspaceTrusted" }, - { - "command": "vscode-docker.compose.down.subset", - "when": "isWorkspaceTrusted" - }, { "command": "vscode-docker.compose.restart", "when": "isWorkspaceTrusted" @@ -158,11 +154,6 @@ "command": "vscode-docker.compose.down", "group": "docker" }, - { - "when": "isWorkspaceTrusted && editorLangId == dockercompose", - "command": "vscode-docker.compose.down.subset", - "group": "docker" - }, { "when": "isWorkspaceTrusted && editorLangId == dockercompose", "command": "vscode-docker.compose.restart", @@ -178,11 +169,6 @@ "command": "vscode-docker.compose.up.subset", "group": "docker" }, - { - "when": "isWorkspaceTrusted && editorLangId == dockercompose", - "command": "vscode-docker.compose.down.subset", - "group": "docker" - }, { "when": "isWorkspaceTrusted && editorLangId == dockerfile", "command": "vscode-docker.images.build", @@ -200,11 +186,6 @@ "command": "vscode-docker.compose.down", "group": "docker" }, - { - "when": "isWorkspaceTrusted && resourceLangId == dockercompose", - "command": "vscode-docker.compose.down.subset", - "group": "docker" - }, { "when": "isWorkspaceTrusted && resourceLangId == dockercompose", "command": "vscode-docker.compose.restart", @@ -1837,50 +1818,13 @@ "type": "string" } ], - "default": [ - { - "label": "Compose Down", - "template": "${composeCommand} ${configurationFile} down" - } - ], - "description": "%vscode-docker.config.template.composeDown.description%" - }, - "docker.commands.composeDownSubset": { - "oneOf": [ - { - "type": "array", - "items": { - "properties": { - "template": { - "type": "string", - "description": "%vscode-docker.config.template.composeDownSubset.template%" - }, - "label": { - "type": "string", - "description": "%vscode-docker.config.template.composeDownSubset.label%" - }, - "match": { - "type": "string", - "description": "%vscode-docker.config.template.composeDownSubset.match%" - } - }, - "required": [ - "label", - "template" - ] - } - }, - { - "type": "string" - } - ], "default": [ { "label": "Compose Down", "template": "${composeCommand} ${profileList} ${configurationFile} down" } ], - "description": "%vscode-docker.config.template.composeDownSubset.description%" + "description": "%vscode-docker.config.template.composeDown.description%" }, "docker.containers.groupBy": { "type": "string", @@ -2346,11 +2290,6 @@ "title": "%vscode-docker.commands.compose.down%", "category": "%vscode-docker.commands.category.docker%" }, - { - "command": "vscode-docker.compose.down.subset", - "title": "%vscode-docker.commands.compose.down.subset%", - "category": "%vscode-docker.commands.category.docker%" - }, { "command": "vscode-docker.compose.restart", "title": "%vscode-docker.commands.compose.restart%", diff --git a/package.nls.json b/package.nls.json index e4145e1440..c5e6f86adb 100644 --- a/package.nls.json +++ b/package.nls.json @@ -154,7 +154,6 @@ "vscode-docker.config.template.composeUpSubset.label": "The label displayed to the user.", "vscode-docker.config.template.composeUpSubset.match": "The regular expression for choosing the right template. Checked against docker-compose YAML files, folder name, etc.", "vscode-docker.config.template.composeUpSubset.description": "Command templates for `docker-compose up ` commands.", - "vscode-docker.config.template.composeDownSubset.description": "Command templates for `docker-compose down` commands.", "vscode-docker.config.template.composeDown.template": "The command template.", "vscode-docker.config.template.composeDown.label": "The label displayed to the user.", "vscode-docker.config.template.composeDown.match": "The regular expression for choosing the right template. Checked against docker-compose YAML files, folder name, etc.", @@ -204,7 +203,6 @@ "vscode-docker.config.docker.enableDockerComposeLanguageService": "Whether or not to enable the preview Docker Compose Language Service. Changing requires restart to take effect.", "vscode-docker.config.deprecated": "This setting has been deprecated and will be removed in a future release.", "vscode-docker.commands.compose.down": "Compose Down", - "vscode-docker.commands.compose.down.subset": "Compose Down - Select Services", "vscode-docker.commands.compose.restart": "Compose Restart", "vscode-docker.commands.compose.up": "Compose Up", "vscode-docker.commands.compose.up.subset": "Compose Up - Select Services", diff --git a/src/commands/compose/compose.ts b/src/commands/compose/compose.ts index 827c062f1c..b0b8b4dff7 100644 --- a/src/commands/compose/compose.ts +++ b/src/commands/compose/compose.ts @@ -13,7 +13,7 @@ import { quickPickWorkspaceFolder } from '../../utils/quickPickWorkspaceFolder'; import { selectComposeCommand } from '../selectCommandTemplate'; import { getComposeProfileList, getComposeProfilesOrServices, getComposeServiceList, getDefaultCommandComposeProfilesOrServices } from './getComposeSubsetList'; -async function compose(context: IActionContext, commands: ('up' | 'down' | 'upSubset' | 'downSubset')[], message: string, dockerComposeFileUri?: vscode.Uri | string, selectedComposeFileUris?: vscode.Uri[], preselectedServices?: string[], preselectedProfiles?: string[]): Promise { +async function compose(context: IActionContext, commands: ('up' | 'down' | 'upSubset')[], message: string, dockerComposeFileUri?: vscode.Uri | string, selectedComposeFileUris?: vscode.Uri[], preselectedServices?: string[], preselectedProfiles?: string[]): Promise { if (!vscode.workspace.isTrusted) { throw new UserCancelledError('enforceTrust'); } @@ -66,7 +66,7 @@ async function compose(context: IActionContext, commands: ('up' | 'down' | 'upSu if (!terminalCommand.args?.length) { // Add the service list if needed terminalCommand.command = await addServicesOrProfilesIfNeeded(context, folder, terminalCommand.command, preselectedServices, preselectedProfiles); - } else if (command === 'upSubset') { + } else if (command === 'upSubset' || command === 'down') { // If there are arguments, it means we're using a default command (based on the logic in selectCommandTemplate.ts) // So, we only want to add profile/service list for the upSubset command terminalCommand = await addDefaultCommandServicesOrProfilesIfNeeded(context, folder, terminalCommand, preselectedServices, preselectedProfiles); @@ -97,10 +97,6 @@ export async function composeDown(context: IActionContext, dockerComposeFileUri? return await compose(context, ['down'], vscode.l10n.t('Choose Docker Compose file to take down'), dockerComposeFileUri, selectedComposeFileUris); } -export async function composeDownSubset(context: IActionContext, dockerComposeFileUri?: vscode.Uri, selectedComposeFileUris?: vscode.Uri[], preselectedServices?: string[], preselectedProfiles?: string[]): Promise { - return await compose(context, ['downSubset'], vscode.l10n.t('Choose Docker Compose file to take down'), dockerComposeFileUri, selectedComposeFileUris, preselectedServices, preselectedProfiles); -} - export async function composeRestart(context: IActionContext, dockerComposeFileUri?: vscode.Uri, selectedComposeFileUris?: vscode.Uri[]): Promise { return await compose(context, ['down', 'up'], vscode.l10n.t('Choose Docker Compose file to restart'), dockerComposeFileUri, selectedComposeFileUris); } diff --git a/src/commands/compose/getComposeSubsetList.ts b/src/commands/compose/getComposeSubsetList.ts index 3da7eb94ce..781da08bdb 100644 --- a/src/commands/compose/getComposeSubsetList.ts +++ b/src/commands/compose/getComposeSubsetList.ts @@ -30,6 +30,8 @@ export async function getDefaultCommandComposeProfilesOrServices(context: IActio useProfiles = true; } else if (preselectedServices?.length) { useProfiles = false; + } else if (composeCommand.args.includes('down')) { + useProfiles = true; } else if (profiles?.length) { const profilesOrServices: IAzureQuickPickItem[] = [ { diff --git a/src/commands/registerCommands.ts b/src/commands/registerCommands.ts index a94a5f6cd1..4cda226c99 100644 --- a/src/commands/registerCommands.ts +++ b/src/commands/registerCommands.ts @@ -9,7 +9,7 @@ import { ext } from "../extensionVariables"; import { scaffold } from "../scaffolding/scaffold"; import { scaffoldCompose } from "../scaffolding/scaffoldCompose"; import { scaffoldDebugConfig } from "../scaffolding/scaffoldDebugConfig"; -import { composeDown, composeDownSubset, composeRestart, composeUp, composeUpSubset } from "./compose/compose"; +import { composeDown, composeRestart, composeUp, composeUpSubset } from "./compose/compose"; import { attachShellContainer } from "./containers/attachShellContainer"; import { browseContainer } from "./containers/browseContainer"; import { composeGroupDown, composeGroupLogs, composeGroupRestart, composeGroupStart, composeGroupStop } from "./containers/composeGroup"; @@ -117,7 +117,6 @@ export function registerCommands(): void { registerWorkspaceCommand('vscode-docker.debugging.initializeForDebugging', scaffoldDebugConfig); registerWorkspaceCommand('vscode-docker.compose.down', composeDown); - registerWorkspaceCommand('vscode-docker.compose.down.subset', composeDownSubset); registerWorkspaceCommand('vscode-docker.compose.restart', composeRestart); registerWorkspaceCommand('vscode-docker.compose.up', composeUp); registerWorkspaceCommand('vscode-docker.compose.up.subset', composeUpSubset); diff --git a/src/commands/selectCommandTemplate.ts b/src/commands/selectCommandTemplate.ts index 7162723187..66f4a061ad 100644 --- a/src/commands/selectCommandTemplate.ts +++ b/src/commands/selectCommandTemplate.ts @@ -10,7 +10,7 @@ import { ext } from '../extensionVariables'; import { isDockerComposeClient } from '../runtimes/OrchestratorRuntimeManager'; import { resolveVariables } from '../utils/resolveVariables'; -type TemplateCommand = 'build' | 'run' | 'runInteractive' | 'attach' | 'logs' | 'composeUp' | 'composeDown' | 'composeUpSubset' | 'composeDownSubset'; +type TemplateCommand = 'build' | 'run' | 'runInteractive' | 'attach' | 'logs' | 'composeUp' | 'composeDown' | 'composeUpSubset'; type TemplatePicker = (items: IAzureQuickPickItem[], options: IAzureQuickPickOptions) => Promise>; @@ -76,7 +76,7 @@ export async function selectLogsCommand(context: IActionContext, containerName: ); } -export async function selectComposeCommand(context: IActionContext, folder: vscode.WorkspaceFolder, composeCommand: 'up' | 'down' | 'upSubset' | 'downSubset', configurationFile?: string, detached?: boolean, build?: boolean): Promise { +export async function selectComposeCommand(context: IActionContext, folder: vscode.WorkspaceFolder, composeCommand: 'up' | 'down' | 'upSubset', configurationFile?: string, detached?: boolean, build?: boolean): Promise { let template: TemplateCommand; switch (composeCommand) { @@ -86,9 +86,6 @@ export async function selectComposeCommand(context: IActionContext, folder: vsco case 'down': template = 'composeDown'; break; - case 'downSubset': - template = 'composeDownSubset'; - break; case 'upSubset': default: template = 'composeUpSubset';