diff --git a/README.md b/README.md index 5e7946e7..619d56e3 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,8 @@ Acceptable values are latest or any semantic version string like 1.15.0. Use thi version: '' # default is latest stable id: install ``` + +The cached helm binary path is prepended to the PATH environment variable as well as stored in the helm-path output variable. Refer to the action metadata file for details about all the inputs https://github.com/Azure/setup-helm/blob/master/action.yml # Contributing diff --git a/lib/run.js b/lib/run.js index 94feb7a2..02c84478 100644 --- a/lib/run.js +++ b/lib/run.js @@ -22,8 +22,8 @@ const os = __importStar(require("os")); const path = __importStar(require("path")); const util = __importStar(require("util")); const fs = __importStar(require("fs")); -const toolCache = __importStar(require("../node_modules/@actions/tool-cache")); -const core = __importStar(require("../node_modules/@actions/core")); +const toolCache = __importStar(require("@actions/tool-cache")); +const core = __importStar(require("@actions/core")); const helmToolName = 'helm'; const stableHelmVersion = 'v2.14.1'; const helmLatestReleaseUrl = 'https://api.github.com/repos/helm/helm/releases/latest'; @@ -119,6 +119,14 @@ function run() { version = yield getStableHelmVersion(); } let cachedPath = yield downloadHelm(version); + try { + if (!process.env['PATH'].startsWith(path.dirname(cachedPath))) { + core.addPath(path.dirname(cachedPath)); + } + } + catch (_a) { + //do nothing, set as output variable + } console.log(`Helm tool version: '${version}' has been cached at ${cachedPath}`); core.setOutput('helm-path', cachedPath); }); diff --git a/src/run.ts b/src/run.ts index f7232941..fd4f7af6 100644 --- a/src/run.ts +++ b/src/run.ts @@ -114,6 +114,17 @@ async function run() { } let cachedPath = await downloadHelm(version); + + try { + + if (!process.env['PATH'].startsWith(path.dirname(cachedPath))) { + core.addPath(path.dirname(cachedPath)); + } + } + catch { + //do nothing, set as output variable + } + console.log(`Helm tool version: '${version}' has been cached at ${cachedPath}`); core.setOutput('helm-path', cachedPath); } diff --git a/tsconfig.json b/tsconfig.json index 960dc9fa..a82bd172 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -22,7 +22,7 @@ // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */ /* Strict Type-Checking Options */ - "strict": true, /* Enable all strict type-checking options. */ + //"strict": true, /* Enable all strict type-checking options. */ "noImplicitAny": false, /* Raise error on expressions and declarations with an implied 'any' type. */ // "strictNullChecks": true, /* Enable strict null checks. */ // "strictFunctionTypes": true, /* Enable strict checking of function types. */