This commit is contained in:
Opportunity
2020-07-17 11:55:08 +08:00
Unverified
parent fad1ce1d16
commit 00df9418a5
4 changed files with 31 additions and 37 deletions
+17 -20
View File
@@ -18,18 +18,15 @@ var __importStar = (this && this.__importStar) || function (mod) {
__setModuleDefault(result, mod);
return result;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.unixInstall = void 0;
const core_1 = __importDefault(require("@actions/core"));
const core = __importStar(require("@actions/core"));
const exec_1 = require("@actions/exec");
const io_1 = __importDefault(require("@actions/io"));
const tool_cache_1 = __importDefault(require("@actions/tool-cache"));
const os_1 = __importDefault(require("os"));
const path_1 = __importDefault(require("path"));
const semver_1 = __importDefault(require("semver"));
const io = __importStar(require("@actions/io"));
const toolCache = __importStar(require("@actions/tool-cache"));
const os = __importStar(require("os"));
const path = __importStar(require("path"));
const semver = __importStar(require("semver"));
const git = __importStar(require("./git"));
async function install(sourceDir, binDir) {
await exec_1.exec('make', ['build'], { cwd: sourceDir });
@@ -39,31 +36,31 @@ async function unixInstall(version) {
let toolDir;
if (version.type !== 'local') {
const ver = version.version;
toolDir = tool_cache_1.default.find('xmake', ver);
toolDir = toolCache.find('xmake', ver);
if (!toolDir) {
const sourceDir = await core_1.default.group(`download xmake ${String(version)}`, () => git.create(version.repo, version.sha));
toolDir = await core_1.default.group(`install xmake ${String(version)}`, async () => {
const binDir = path_1.default.join(os_1.default.tmpdir(), `xmake-${version.sha}`);
const sourceDir = await core.group(`download xmake ${String(version)}`, () => git.create(version.repo, version.sha));
toolDir = await core.group(`install xmake ${String(version)}`, async () => {
const binDir = path.join(os.tmpdir(), `xmake-${version.sha}`);
await install(sourceDir, binDir);
const cacheDir = await tool_cache_1.default.cacheDir(binDir, 'xmake', ver);
await io_1.default.rmRF(binDir);
const cacheDir = await toolCache.cacheDir(binDir, 'xmake', ver);
await io.rmRF(binDir);
await git.cleanup(version.sha);
return cacheDir;
});
}
}
else {
toolDir = await core_1.default.group(`install local xmake at '${version.path}'`, async () => {
const binDir = path_1.default.join(os_1.default.tmpdir(), `xmake-${Date.now()}`);
toolDir = await core.group(`install local xmake at '${version.path}'`, async () => {
const binDir = path.join(os.tmpdir(), `xmake-${Date.now()}`);
await install(version.path, binDir);
return binDir;
});
}
if (version.type !== 'tags' || semver_1.default.gt(version.version, '2.3.1')) {
core_1.default.addPath(path_1.default.join(toolDir, 'bin'));
if (version.type !== 'tags' || semver.gt(version.version, '2.3.1')) {
core.addPath(path.join(toolDir, 'bin'));
}
else {
core_1.default.addPath(path_1.default.join(toolDir, 'share', 'xmake'));
core.addPath(path.join(toolDir, 'share', 'xmake'));
}
}
exports.unixInstall = unixInstall;