mirror of
https://github.com/julia-actions/setup-julia.git
synced 2026-02-16 04:56:53 +08:00
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5113fd16e9 |
2
.github/workflows/example-builds.yml
vendored
2
.github/workflows/example-builds.yml
vendored
@@ -19,7 +19,7 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
julia-version: ['1.0.5', '1.2', '^1.5.0-beta1', '1']
|
julia-version: ['1.0.5', '1', '^1.5.0-beta1']
|
||||||
julia-arch: [x64, x86]
|
julia-arch: [x64, x86]
|
||||||
os: [ubuntu-latest, macOS-latest, windows-latest]
|
os: [ubuntu-latest, macOS-latest, windows-latest]
|
||||||
# 32-bit Julia binaries are not available on macOS
|
# 32-bit Julia binaries are not available on macOS
|
||||||
|
|||||||
2415
dist/index.js
vendored
2415
dist/index.js
vendored
File diff suppressed because it is too large
Load Diff
65
lib/installer.js
generated
65
lib/installer.js
generated
@@ -102,57 +102,30 @@ function getJuliaVersion(availableReleases, versionInput) {
|
|||||||
return version;
|
return version;
|
||||||
}
|
}
|
||||||
exports.getJuliaVersion = getJuliaVersion;
|
exports.getJuliaVersion = getJuliaVersion;
|
||||||
function getDesiredFileExts() {
|
|
||||||
let fileExt1;
|
|
||||||
let hasFileExt2;
|
|
||||||
let fileExt2;
|
|
||||||
if (osPlat == 'win32') {
|
|
||||||
fileExt1 = 'exe';
|
|
||||||
hasFileExt2 = false;
|
|
||||||
fileExt2 = '';
|
|
||||||
}
|
|
||||||
else if (osPlat == 'darwin') {
|
|
||||||
fileExt1 = 'tar.gz';
|
|
||||||
hasFileExt2 = true;
|
|
||||||
fileExt2 = 'dmg';
|
|
||||||
}
|
|
||||||
else if (osPlat === 'linux') {
|
|
||||||
fileExt1 = 'tar.gz';
|
|
||||||
hasFileExt2 = false;
|
|
||||||
fileExt2 = '';
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
throw new Error(`Platform ${osPlat} is not supported`);
|
|
||||||
}
|
|
||||||
return [fileExt1, hasFileExt2, fileExt2];
|
|
||||||
}
|
|
||||||
function getNightlyFileName(arch) {
|
function getNightlyFileName(arch) {
|
||||||
let versionExt;
|
let versionExt, ext;
|
||||||
let fileExt1;
|
|
||||||
[fileExt1, ,] = getDesiredFileExts();
|
|
||||||
if (osPlat == 'win32') {
|
if (osPlat == 'win32') {
|
||||||
versionExt = arch == 'x64' ? '-win64' : '-win32';
|
versionExt = arch == 'x64' ? '-win64' : '-win32';
|
||||||
|
ext = 'exe';
|
||||||
}
|
}
|
||||||
else if (osPlat == 'darwin') {
|
else if (osPlat == 'darwin') {
|
||||||
if (arch == 'x86') {
|
if (arch == 'x86') {
|
||||||
throw new Error('32-bit Julia is not available on macOS');
|
throw new Error('32-bit Julia is not available on macOS');
|
||||||
}
|
}
|
||||||
versionExt = '-mac64';
|
versionExt = '-mac64';
|
||||||
|
ext = 'dmg';
|
||||||
}
|
}
|
||||||
else if (osPlat === 'linux') {
|
else if (osPlat === 'linux') {
|
||||||
versionExt = arch == 'x64' ? '-linux64' : '-linux32';
|
versionExt = arch == 'x64' ? '-linux64' : '-linux32';
|
||||||
|
ext = 'tar.gz';
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
throw new Error(`Platform ${osPlat} is not supported`);
|
throw new Error(`Platform ${osPlat} is not supported`);
|
||||||
}
|
}
|
||||||
return `julia-latest${versionExt}.${fileExt1}`;
|
return `julia-latest${versionExt}.${ext}`;
|
||||||
}
|
}
|
||||||
function getFileInfo(versionInfo, version, arch) {
|
function getFileInfo(versionInfo, version, arch) {
|
||||||
const err = `Could not find ${archMap[arch]}/${version} binaries`;
|
const err = `Could not find ${archMap[arch]}/${version} binaries`;
|
||||||
let fileExt1;
|
|
||||||
let hasFileExt2;
|
|
||||||
let fileExt2;
|
|
||||||
[fileExt1, hasFileExt2, fileExt2] = getDesiredFileExts();
|
|
||||||
if (version.endsWith('nightly')) {
|
if (version.endsWith('nightly')) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -161,19 +134,7 @@ function getFileInfo(versionInfo, version, arch) {
|
|||||||
}
|
}
|
||||||
for (let file of versionInfo[version].files) {
|
for (let file of versionInfo[version].files) {
|
||||||
if (file.os == osMap[osPlat] && file.arch == archMap[arch]) {
|
if (file.os == osMap[osPlat] && file.arch == archMap[arch]) {
|
||||||
if (file.extension == fileExt1) {
|
return file;
|
||||||
return file;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (hasFileExt2) {
|
|
||||||
core.debug(`Could not find ${fileExt1}; trying to find ${fileExt2} instead`);
|
|
||||||
for (let file of versionInfo[version].files) {
|
|
||||||
if (file.os == osMap[osPlat] && file.arch == archMap[arch]) {
|
|
||||||
if (file.extension == fileExt2) {
|
|
||||||
return file;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw err;
|
throw err;
|
||||||
@@ -240,17 +201,9 @@ function installJulia(versionInfo, version, arch) {
|
|||||||
}
|
}
|
||||||
return tempInstallDir;
|
return tempInstallDir;
|
||||||
case 'darwin':
|
case 'darwin':
|
||||||
if (fileInfo !== null && fileInfo.extension == 'dmg') {
|
yield exec.exec('hdiutil', ['attach', juliaDownloadPath]);
|
||||||
core.debug(`Support for .dmg files is deprecated and may be removed in a future release`);
|
yield exec.exec('/bin/bash', ['-c', `cp -a /Volumes/Julia-*/Julia-*.app/Contents/Resources/julia ${tempInstallDir}`]);
|
||||||
yield exec.exec('hdiutil', ['attach', juliaDownloadPath]);
|
return path.join(tempInstallDir, 'julia');
|
||||||
yield exec.exec('/bin/bash', ['-c', `cp -a /Volumes/Julia-*/Julia-*.app/Contents/Resources/julia ${tempInstallDir}`]);
|
|
||||||
return path.join(tempInstallDir, 'julia');
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
// tc.extractTar doesn't support stripping components, so we have to call tar manually
|
|
||||||
yield exec.exec('tar', ['xf', juliaDownloadPath, '--strip-components=1', '-C', tempInstallDir]);
|
|
||||||
return tempInstallDir;
|
|
||||||
}
|
|
||||||
default:
|
default:
|
||||||
throw new Error(`Platform ${osPlat} is not supported`);
|
throw new Error(`Platform ${osPlat} is not supported`);
|
||||||
}
|
}
|
||||||
|
|||||||
72
package-lock.json
generated
72
package-lock.json
generated
@@ -1,15 +1,15 @@
|
|||||||
{
|
{
|
||||||
"name": "setup-julia",
|
"name": "setup-julia",
|
||||||
"version": "1.8.3",
|
"version": "1.8.1",
|
||||||
"lockfileVersion": 2,
|
"lockfileVersion": 2,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "setup-julia",
|
"name": "setup-julia",
|
||||||
"version": "1.8.3",
|
"version": "1.8.1",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@actions/core": "^1.10.0",
|
"@actions/core": "^1.2.6",
|
||||||
"@actions/exec": "^1.0.0",
|
"@actions/exec": "^1.0.0",
|
||||||
"@actions/io": "^1.0.0",
|
"@actions/io": "^1.0.0",
|
||||||
"@actions/tool-cache": "^1.0.0",
|
"@actions/tool-cache": "^1.0.0",
|
||||||
@@ -31,43 +31,15 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@actions/core": {
|
"node_modules/@actions/core": {
|
||||||
"version": "1.10.0",
|
"version": "1.2.6",
|
||||||
"resolved": "https://registry.npmjs.org/@actions/core/-/core-1.10.0.tgz",
|
"resolved": "https://registry.npmjs.org/@actions/core/-/core-1.2.6.tgz",
|
||||||
"integrity": "sha512-2aZDDa3zrrZbP5ZYg159sNoLRb61nQ7awl5pSvIq5Qpj81vwDzdMRKzkWJGJuwVvWpvZKx7vspJALyvaaIQyug==",
|
"integrity": "sha512-ZQYitnqiyBc3D+k7LsgSBmMDVkOVidaagDG7j3fOym77jNunWRuYx7VSHa9GNfFZh+zh61xsCjRj4JxMZlDqTA=="
|
||||||
"dependencies": {
|
|
||||||
"@actions/http-client": "^2.0.1",
|
|
||||||
"uuid": "^8.3.2"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@actions/core/node_modules/uuid": {
|
|
||||||
"version": "8.3.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
|
|
||||||
"integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
|
|
||||||
"bin": {
|
|
||||||
"uuid": "dist/bin/uuid"
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"node_modules/@actions/exec": {
|
"node_modules/@actions/exec": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/@actions/exec/-/exec-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/@actions/exec/-/exec-1.0.0.tgz",
|
||||||
"integrity": "sha512-nquH0+XKng+Ll7rZfCojN7NWSbnGh+ltwUJhzfbLkmOJgxocGX2/yXcZLMyT9fa7+tByEow/NSTrBExNlEj9fw=="
|
"integrity": "sha512-nquH0+XKng+Ll7rZfCojN7NWSbnGh+ltwUJhzfbLkmOJgxocGX2/yXcZLMyT9fa7+tByEow/NSTrBExNlEj9fw=="
|
||||||
},
|
},
|
||||||
"node_modules/@actions/http-client": {
|
|
||||||
"version": "2.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.0.1.tgz",
|
|
||||||
"integrity": "sha512-PIXiMVtz6VvyaRsGY268qvj57hXQEpsYogYOu2nrQhlf+XCGmZstmuZBbAybUl1nQGnvS1k1eEsQ69ZoD7xlSw==",
|
|
||||||
"dependencies": {
|
|
||||||
"tunnel": "^0.0.6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@actions/http-client/node_modules/tunnel": {
|
|
||||||
"version": "0.0.6",
|
|
||||||
"resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz",
|
|
||||||
"integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==",
|
|
||||||
"engines": {
|
|
||||||
"node": ">=0.6.11 <=0.7.0 || >=0.7.3"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@actions/io": {
|
"node_modules/@actions/io": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/@actions/io/-/io-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/@actions/io/-/io-1.0.0.tgz",
|
||||||
@@ -8522,41 +8494,15 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@actions/core": {
|
"@actions/core": {
|
||||||
"version": "1.10.0",
|
"version": "1.2.6",
|
||||||
"resolved": "https://registry.npmjs.org/@actions/core/-/core-1.10.0.tgz",
|
"resolved": "https://registry.npmjs.org/@actions/core/-/core-1.2.6.tgz",
|
||||||
"integrity": "sha512-2aZDDa3zrrZbP5ZYg159sNoLRb61nQ7awl5pSvIq5Qpj81vwDzdMRKzkWJGJuwVvWpvZKx7vspJALyvaaIQyug==",
|
"integrity": "sha512-ZQYitnqiyBc3D+k7LsgSBmMDVkOVidaagDG7j3fOym77jNunWRuYx7VSHa9GNfFZh+zh61xsCjRj4JxMZlDqTA=="
|
||||||
"requires": {
|
|
||||||
"@actions/http-client": "^2.0.1",
|
|
||||||
"uuid": "^8.3.2"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"uuid": {
|
|
||||||
"version": "8.3.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
|
|
||||||
"integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg=="
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"@actions/exec": {
|
"@actions/exec": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/@actions/exec/-/exec-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/@actions/exec/-/exec-1.0.0.tgz",
|
||||||
"integrity": "sha512-nquH0+XKng+Ll7rZfCojN7NWSbnGh+ltwUJhzfbLkmOJgxocGX2/yXcZLMyT9fa7+tByEow/NSTrBExNlEj9fw=="
|
"integrity": "sha512-nquH0+XKng+Ll7rZfCojN7NWSbnGh+ltwUJhzfbLkmOJgxocGX2/yXcZLMyT9fa7+tByEow/NSTrBExNlEj9fw=="
|
||||||
},
|
},
|
||||||
"@actions/http-client": {
|
|
||||||
"version": "2.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.0.1.tgz",
|
|
||||||
"integrity": "sha512-PIXiMVtz6VvyaRsGY268qvj57hXQEpsYogYOu2nrQhlf+XCGmZstmuZBbAybUl1nQGnvS1k1eEsQ69ZoD7xlSw==",
|
|
||||||
"requires": {
|
|
||||||
"tunnel": "^0.0.6"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"tunnel": {
|
|
||||||
"version": "0.0.6",
|
|
||||||
"resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz",
|
|
||||||
"integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg=="
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"@actions/io": {
|
"@actions/io": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/@actions/io/-/io-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/@actions/io/-/io-1.0.0.tgz",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "setup-julia",
|
"name": "setup-julia",
|
||||||
"version": "1.8.3",
|
"version": "1.8.1",
|
||||||
"private": true,
|
"private": true,
|
||||||
"description": "setup Julia action",
|
"description": "setup Julia action",
|
||||||
"main": "lib/setup-julia.js",
|
"main": "lib/setup-julia.js",
|
||||||
@@ -21,7 +21,7 @@
|
|||||||
"author": "Sascha Mann <git@mail.saschamann.eu>",
|
"author": "Sascha Mann <git@mail.saschamann.eu>",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@actions/core": "^1.10.0",
|
"@actions/core": "^1.2.6",
|
||||||
"@actions/exec": "^1.0.0",
|
"@actions/exec": "^1.0.0",
|
||||||
"@actions/io": "^1.0.0",
|
"@actions/io": "^1.0.0",
|
||||||
"@actions/tool-cache": "^1.0.0",
|
"@actions/tool-cache": "^1.0.0",
|
||||||
|
|||||||
@@ -93,59 +93,31 @@ export function getJuliaVersion(availableReleases: string[], versionInput: strin
|
|||||||
return version
|
return version
|
||||||
}
|
}
|
||||||
|
|
||||||
function getDesiredFileExts(): [string, boolean, string] {
|
|
||||||
let fileExt1: string
|
|
||||||
let hasFileExt2: boolean
|
|
||||||
let fileExt2: string
|
|
||||||
|
|
||||||
if (osPlat == 'win32') {
|
|
||||||
fileExt1 = 'exe'
|
|
||||||
hasFileExt2 = false
|
|
||||||
fileExt2 = ''
|
|
||||||
} else if (osPlat == 'darwin') {
|
|
||||||
fileExt1 = 'tar.gz'
|
|
||||||
hasFileExt2 = true
|
|
||||||
fileExt2 = 'dmg'
|
|
||||||
} else if (osPlat === 'linux') {
|
|
||||||
fileExt1 = 'tar.gz'
|
|
||||||
hasFileExt2 = false
|
|
||||||
fileExt2 = ''
|
|
||||||
} else {
|
|
||||||
throw new Error(`Platform ${osPlat} is not supported`)
|
|
||||||
}
|
|
||||||
|
|
||||||
return [fileExt1, hasFileExt2, fileExt2]
|
|
||||||
}
|
|
||||||
|
|
||||||
function getNightlyFileName(arch: string): string {
|
function getNightlyFileName(arch: string): string {
|
||||||
let versionExt: string
|
let versionExt: string, ext: string
|
||||||
let fileExt1: string
|
|
||||||
[fileExt1, , ] = getDesiredFileExts()
|
|
||||||
|
|
||||||
if (osPlat == 'win32') {
|
if (osPlat == 'win32') {
|
||||||
versionExt = arch == 'x64' ? '-win64' : '-win32'
|
versionExt = arch == 'x64' ? '-win64' : '-win32'
|
||||||
|
ext = 'exe'
|
||||||
} else if (osPlat == 'darwin') {
|
} else if (osPlat == 'darwin') {
|
||||||
if (arch == 'x86') {
|
if (arch == 'x86') {
|
||||||
throw new Error('32-bit Julia is not available on macOS')
|
throw new Error('32-bit Julia is not available on macOS')
|
||||||
}
|
}
|
||||||
versionExt = '-mac64'
|
versionExt = '-mac64'
|
||||||
|
ext = 'dmg'
|
||||||
} else if (osPlat === 'linux') {
|
} else if (osPlat === 'linux') {
|
||||||
versionExt = arch == 'x64' ? '-linux64' : '-linux32'
|
versionExt = arch == 'x64' ? '-linux64' : '-linux32'
|
||||||
|
ext = 'tar.gz'
|
||||||
} else {
|
} else {
|
||||||
throw new Error(`Platform ${osPlat} is not supported`)
|
throw new Error(`Platform ${osPlat} is not supported`)
|
||||||
}
|
}
|
||||||
|
|
||||||
return `julia-latest${versionExt}.${fileExt1}`
|
return `julia-latest${versionExt}.${ext}`
|
||||||
}
|
}
|
||||||
|
|
||||||
export function getFileInfo(versionInfo, version: string, arch: string) {
|
export function getFileInfo(versionInfo, version: string, arch: string) {
|
||||||
const err = `Could not find ${archMap[arch]}/${version} binaries`
|
const err = `Could not find ${archMap[arch]}/${version} binaries`
|
||||||
|
|
||||||
let fileExt1: string
|
|
||||||
let hasFileExt2: boolean
|
|
||||||
let fileExt2: string
|
|
||||||
[fileExt1, hasFileExt2, fileExt2] = getDesiredFileExts()
|
|
||||||
|
|
||||||
if (version.endsWith('nightly')) {
|
if (version.endsWith('nightly')) {
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
@@ -156,20 +128,7 @@ export function getFileInfo(versionInfo, version: string, arch: string) {
|
|||||||
|
|
||||||
for (let file of versionInfo[version].files) {
|
for (let file of versionInfo[version].files) {
|
||||||
if (file.os == osMap[osPlat] && file.arch == archMap[arch]) {
|
if (file.os == osMap[osPlat] && file.arch == archMap[arch]) {
|
||||||
if (file.extension == fileExt1) {
|
return file
|
||||||
return file
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (hasFileExt2) {
|
|
||||||
core.debug(`Could not find ${fileExt1}; trying to find ${fileExt2} instead`)
|
|
||||||
for (let file of versionInfo[version].files) {
|
|
||||||
if (file.os == osMap[osPlat] && file.arch == archMap[arch]) {
|
|
||||||
if (file.extension == fileExt2) {
|
|
||||||
return file
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -213,6 +172,7 @@ export async function installJulia(versionInfo, version: string, arch: string):
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
// Verify checksum
|
// Verify checksum
|
||||||
if (!version.endsWith('nightly')) {
|
if (!version.endsWith('nightly')) {
|
||||||
const checkSum = await calculateChecksum(juliaDownloadPath)
|
const checkSum = await calculateChecksum(juliaDownloadPath)
|
||||||
@@ -241,16 +201,9 @@ export async function installJulia(versionInfo, version: string, arch: string):
|
|||||||
}
|
}
|
||||||
return tempInstallDir
|
return tempInstallDir
|
||||||
case 'darwin':
|
case 'darwin':
|
||||||
if (fileInfo !== null && fileInfo.extension == 'dmg') {
|
await exec.exec('hdiutil', ['attach', juliaDownloadPath])
|
||||||
core.debug(`Support for .dmg files is deprecated and may be removed in a future release`)
|
await exec.exec('/bin/bash', ['-c', `cp -a /Volumes/Julia-*/Julia-*.app/Contents/Resources/julia ${tempInstallDir}`])
|
||||||
await exec.exec('hdiutil', ['attach', juliaDownloadPath])
|
return path.join(tempInstallDir, 'julia')
|
||||||
await exec.exec('/bin/bash', ['-c', `cp -a /Volumes/Julia-*/Julia-*.app/Contents/Resources/julia ${tempInstallDir}`])
|
|
||||||
return path.join(tempInstallDir, 'julia')
|
|
||||||
} else {
|
|
||||||
// tc.extractTar doesn't support stripping components, so we have to call tar manually
|
|
||||||
await exec.exec('tar', ['xf', juliaDownloadPath, '--strip-components=1', '-C', tempInstallDir])
|
|
||||||
return tempInstallDir
|
|
||||||
}
|
|
||||||
default:
|
default:
|
||||||
throw new Error(`Platform ${osPlat} is not supported`)
|
throw new Error(`Platform ${osPlat} is not supported`)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user