diff --git a/package.json b/package.json index 5f57980e8..b6a3af623 100644 --- a/package.json +++ b/package.json @@ -1480,6 +1480,11 @@ "command": "dbtPowerUser.showNotebookGenerateModelCTE", "title": "Generate dbt model CTE", "group": "notebooks@5" + }, + { + "command": "dbtPowerUser.applyDeferConfig", + "category": "dbt Power User", + "title": "Apply defer configuration" } ], "keybindings": [ diff --git a/src/commands/index.ts b/src/commands/index.ts index 53333bce5..b595a61a2 100644 --- a/src/commands/index.ts +++ b/src/commands/index.ts @@ -797,6 +797,24 @@ export class VSCodeCommands implements Disposable { ); }, ), + commands.registerCommand("dbtPowerUser.applyDeferConfig", async () => { + const projects = this.dbtProjectContainer.getProjects(); + try { + await Promise.all( + projects.map((project) => project.applyDeferConfig()), + ); + window.showInformationMessage("Applied defer configuration"); + } catch (error) { + this.dbtTerminal.error( + "applyDeferConfig", + "Failed to apply defer configuration", + error + ); + window.showErrorMessage( + `Failed to apply defer configuration: ${error}` + ); + } + }), ); }