From 854cb72ee9ea9bec829e981a2887b2ba42cf2b4e Mon Sep 17 00:00:00 2001 From: Sanjula Ganepola Date: Tue, 19 Nov 2024 18:09:24 -0500 Subject: [PATCH] Show secret on edit and pass secret as env var Signed-off-by: Sanjula Ganepola --- src/act.ts | 15 +++++++++++++-- src/views/settings/settingsTreeDataProvider.ts | 3 +-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/act.ts b/src/act.ts index b758722..7fb8c3d 100644 --- a/src/act.ts +++ b/src/act.ts @@ -303,7 +303,7 @@ export class Act { // Build command with settings const settings = await this.settingsManager.getSettings(workspaceFolder, true); const command = `${Act.base} ${commandArgs.options}` + - (settings.secrets.length > 0 ? ` ${Option.Secret} ${settings.secrets.map(secret => (secret.value ? `${secret.key}=${secret.value}` : secret.key)).join(` ${Option.Secret} `)}` : ``) + + (settings.secrets.length > 0 ? ` ${Option.Secret} ${settings.secrets.map(secret => secret.key).join(` ${Option.Secret} `)}` : ``) + (settings.variables.length > 0 ? ` ${Option.Variable} ${settings.variables.map(variable => (variable.value ? `${variable.key}=${variable.value}` : variable.key)).join(` ${Option.Variable} `)}` : ``) + (settings.inputs.length > 0 ? ` ${Option.Input} ${settings.inputs.map(input => `${input.key}=${input.value}`).join(` ${Option.Input} `)}` : ``) + (settings.runners.length > 0 ? ` ${Option.Platform} ${settings.runners.map(runner => `${runner.key}=${runner.value}`).join(` ${Option.Platform} `)}` : ``) + @@ -336,7 +336,18 @@ export class Act { problemMatchers: [], runOptions: {}, group: TaskGroup.Build, - execution: new ShellExecution(command, { cwd: commandArgs.fsPath }) + execution: new ShellExecution( + command, + { + cwd: commandArgs.fsPath, + env: settings.secrets + .filter(secret => secret.value) + .reduce((previousValue, currentValue) => { + previousValue[currentValue.key] = currentValue.value; + return previousValue; + }, {} as Record) + } + ) }); this.storageManager.update(StorageKey.WorkspaceHistory, this.historyManager.workspaceHistory); } diff --git a/src/views/settings/settingsTreeDataProvider.ts b/src/views/settings/settingsTreeDataProvider.ts index 08ac698..65ac2ed 100644 --- a/src/views/settings/settingsTreeDataProvider.ts +++ b/src/views/settings/settingsTreeDataProvider.ts @@ -31,8 +31,7 @@ export default class SettingsTreeDataProvider implements TreeDataProvider