mirror of
https://github.com/actions/setup-go
synced 2024-12-22 14:22:41 +00:00
create bin if not under go env GOPATH
This commit is contained in:
parent
3e014ec8a4
commit
1fea44b3f0
3 changed files with 40 additions and 19 deletions
21
dist/index.js
vendored
21
dist/index.js
vendored
|
@ -1276,6 +1276,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const core = __importStar(__webpack_require__(470));
|
||||
const io = __importStar(__webpack_require__(1));
|
||||
const tc = __importStar(__webpack_require__(533));
|
||||
const installer = __importStar(__webpack_require__(749));
|
||||
const path = __importStar(__webpack_require__(622));
|
||||
|
@ -1327,19 +1328,29 @@ function run() {
|
|||
}
|
||||
exports.run = run;
|
||||
function addBinToPath() {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
let added = false;
|
||||
let g = yield io.which('go');
|
||||
if (!g) {
|
||||
core.debug('go not in the path');
|
||||
return added;
|
||||
}
|
||||
let buf = cp.execSync('go env GOPATH');
|
||||
if (buf) {
|
||||
let d = buf.toString().trim();
|
||||
core.debug(`go env GOPATH: ${d}`);
|
||||
let bp = path.join(d, 'bin');
|
||||
if (fs.existsSync(bp)) {
|
||||
core.debug(`${bp} exists`);
|
||||
let gp = buf.toString().trim();
|
||||
core.debug(`go env GOPATH: ${gp}`);
|
||||
if (fs.existsSync(gp)) {
|
||||
let bp = path.join(gp, 'bin');
|
||||
if (!fs.existsSync(bp)) {
|
||||
core.debug(`creating ${bp}`);
|
||||
io.mkdirP(bp);
|
||||
}
|
||||
core.addPath(bp);
|
||||
added = true;
|
||||
}
|
||||
}
|
||||
return added;
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -25,6 +25,7 @@
|
|||
"dependencies": {
|
||||
"@actions/core": "^1.2.2",
|
||||
"@actions/http-client": "^1.0.6",
|
||||
"@actions/io": "^1.0.2",
|
||||
"@actions/tool-cache": "^1.3.1",
|
||||
"semver": "^6.1.1"
|
||||
},
|
||||
|
|
23
src/main.ts
23
src/main.ts
|
@ -1,4 +1,5 @@
|
|||
import * as core from '@actions/core';
|
||||
import * as io from '@actions/io';
|
||||
import * as tc from '@actions/tool-cache';
|
||||
import * as installer from './installer';
|
||||
import * as path from 'path';
|
||||
|
@ -59,17 +60,25 @@ export async function run() {
|
|||
}
|
||||
}
|
||||
|
||||
function addBinToPath(): boolean {
|
||||
async function addBinToPath(): Promise<boolean> {
|
||||
let added = false;
|
||||
let g = await io.which('go');
|
||||
if (!g) {
|
||||
core.debug('go not in the path');
|
||||
return added;
|
||||
}
|
||||
|
||||
let buf = cp.execSync('go env GOPATH');
|
||||
|
||||
if (buf) {
|
||||
let d = buf.toString().trim();
|
||||
core.debug(`go env GOPATH: ${d}`);
|
||||
let bp = path.join(d, 'bin');
|
||||
let gp = buf.toString().trim();
|
||||
core.debug(`go env GOPATH: ${gp}`);
|
||||
if (fs.existsSync(gp)) {
|
||||
let bp = path.join(gp, 'bin');
|
||||
if (!fs.existsSync(bp)) {
|
||||
core.debug(`creating ${bp}`);
|
||||
io.mkdirP(bp);
|
||||
}
|
||||
|
||||
if (fs.existsSync(bp)) {
|
||||
core.debug(`${bp} exists`);
|
||||
core.addPath(bp);
|
||||
added = true;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue