Compare commits
3 Commits
v1.0.11
...
fniephaus/
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b11d36630f | ||
|
|
babc303d7e | ||
|
|
5f2753d6bc |
@@ -1,7 +1,7 @@
|
||||
import * as path from 'path'
|
||||
import * as graalvm from '../src/graalvm'
|
||||
import {expect, test} from '@jest/globals'
|
||||
import {getLatestRelease} from '../src/utils'
|
||||
import {getTaggedRelease} from '../src/utils'
|
||||
import {findGraalVMVersion, findHighestJavaVersion} from '../src/graalvm'
|
||||
import {GRAALVM_RELEASES_REPO} from '../src/constants'
|
||||
|
||||
@@ -31,7 +31,10 @@ test('request invalid version/javaVersion', async () => {
|
||||
})
|
||||
|
||||
test('find version/javaVersion', async () => {
|
||||
const latestRelease = await getLatestRelease(GRAALVM_RELEASES_REPO)
|
||||
const latestRelease = await getTaggedRelease(
|
||||
GRAALVM_RELEASES_REPO,
|
||||
'vm-22.3.1'
|
||||
)
|
||||
const latestVersion = findGraalVMVersion(latestRelease)
|
||||
expect(latestVersion).not.toBe('')
|
||||
const latestJavaVersion = findHighestJavaVersion(latestRelease, latestVersion)
|
||||
@@ -43,7 +46,7 @@ test('find version/javaVersion', async () => {
|
||||
findGraalVMVersion(invalidRelease)
|
||||
} catch (err) {
|
||||
if (!(err instanceof Error)) {
|
||||
fail(`Unexpected non-Erro: ${err}`)
|
||||
fail(`Unexpected non-Error: ${err}`)
|
||||
}
|
||||
error = err
|
||||
}
|
||||
|
||||
15
dist/cleanup/index.js
generated
vendored
15
dist/cleanup/index.js
generated
vendored
@@ -70461,7 +70461,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
||||
});
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
||||
exports.createPRComment = exports.isPREvent = exports.toSemVer = exports.calculateSHA256 = exports.downloadExtractAndCacheJDK = exports.downloadAndExtractJDK = exports.getLatestRelease = exports.exec = void 0;
|
||||
exports.createPRComment = exports.isPREvent = exports.toSemVer = exports.calculateSHA256 = exports.downloadExtractAndCacheJDK = exports.downloadAndExtractJDK = exports.getTaggedRelease = exports.getLatestRelease = exports.exec = void 0;
|
||||
const c = __importStar(__nccwpck_require__(9042));
|
||||
const core = __importStar(__nccwpck_require__(2186));
|
||||
const github = __importStar(__nccwpck_require__(5438));
|
||||
@@ -70503,6 +70503,19 @@ function getLatestRelease(repo) {
|
||||
});
|
||||
}
|
||||
exports.getLatestRelease = getLatestRelease;
|
||||
function getTaggedRelease(repo, tag) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
const githubToken = getGitHubToken();
|
||||
const options = githubToken.length > 0 ? { auth: githubToken } : {};
|
||||
const octokit = new GitHubDotCom(options);
|
||||
return (yield octokit.request('GET /repos/{owner}/{repo}/releases/tags/{tag}', {
|
||||
owner: c.GRAALVM_GH_USER,
|
||||
repo,
|
||||
tag
|
||||
})).data;
|
||||
});
|
||||
}
|
||||
exports.getTaggedRelease = getTaggedRelease;
|
||||
function downloadAndExtractJDK(downloadUrl) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
return findJavaHomeInSubfolder(yield extract(yield tc.downloadTool(downloadUrl)));
|
||||
|
||||
26
dist/main/index.js
generated
vendored
26
dist/main/index.js
generated
vendored
@@ -70141,7 +70141,7 @@ function checkForUpdates(graalVMVersion, javaVersion) {
|
||||
core.notice('Please consider upgrading your project to Java 17+. GraalVM 22.3.X releases are the last to support JDK11: https://github.com/oracle/graal/issues/5063');
|
||||
return;
|
||||
}
|
||||
const latestRelease = yield (0, utils_1.getLatestRelease)(constants_1.GRAALVM_RELEASES_REPO);
|
||||
const latestRelease = yield (0, utils_1.getTaggedRelease)(constants_1.GRAALVM_RELEASES_REPO, 'vm-22.3.1');
|
||||
const latestGraalVMVersion = (0, graalvm_1.findGraalVMVersion)(latestRelease);
|
||||
const selectedVersion = (0, utils_1.toSemVer)(graalVMVersion);
|
||||
const latestVersion = (0, utils_1.toSemVer)(latestGraalVMVersion);
|
||||
@@ -70778,10 +70778,11 @@ const GRAALVM_REPO_DEV_BUILDS = 'graalvm-ce-dev-builds';
|
||||
const GRAALVM_TAG_PREFIX = 'vm-';
|
||||
function setUpGraalVMLatest(gdsToken, javaVersion) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
const lockedVersion = '22.3.1';
|
||||
if (gdsToken.length > 0) {
|
||||
return setUpGraalVMRelease(gdsToken, c.VERSION_LATEST, javaVersion);
|
||||
return setUpGraalVMRelease(gdsToken, lockedVersion, javaVersion);
|
||||
}
|
||||
const latestRelease = yield (0, utils_1.getLatestRelease)(c.GRAALVM_RELEASES_REPO);
|
||||
const latestRelease = yield (0, utils_1.getTaggedRelease)(c.GRAALVM_RELEASES_REPO, GRAALVM_TAG_PREFIX + lockedVersion);
|
||||
const version = findGraalVMVersion(latestRelease);
|
||||
return setUpGraalVMRelease(gdsToken, version, javaVersion);
|
||||
});
|
||||
@@ -71002,7 +71003,9 @@ function run() {
|
||||
const gdsToken = core.getInput(c.INPUT_GDS_TOKEN);
|
||||
const javaVersion = core.getInput(c.INPUT_JAVA_VERSION, { required: true });
|
||||
const componentsString = core.getInput(c.INPUT_COMPONENTS);
|
||||
const components = componentsString.length > 0 ? componentsString.split(',') : [];
|
||||
const components = componentsString.length > 0
|
||||
? componentsString.split(',').map(x => x.trim())
|
||||
: [];
|
||||
const setJavaHome = core.getInput(c.INPUT_SET_JAVA_HOME) === 'true';
|
||||
const cache = core.getInput(c.INPUT_CACHE);
|
||||
const enableCheckForUpdates = core.getInput(c.INPUT_CHECK_FOR_UPDATES) === 'true';
|
||||
@@ -71290,7 +71293,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
||||
});
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
||||
exports.createPRComment = exports.isPREvent = exports.toSemVer = exports.calculateSHA256 = exports.downloadExtractAndCacheJDK = exports.downloadAndExtractJDK = exports.getLatestRelease = exports.exec = void 0;
|
||||
exports.createPRComment = exports.isPREvent = exports.toSemVer = exports.calculateSHA256 = exports.downloadExtractAndCacheJDK = exports.downloadAndExtractJDK = exports.getTaggedRelease = exports.getLatestRelease = exports.exec = void 0;
|
||||
const c = __importStar(__nccwpck_require__(9042));
|
||||
const core = __importStar(__nccwpck_require__(2186));
|
||||
const github = __importStar(__nccwpck_require__(5438));
|
||||
@@ -71332,6 +71335,19 @@ function getLatestRelease(repo) {
|
||||
});
|
||||
}
|
||||
exports.getLatestRelease = getLatestRelease;
|
||||
function getTaggedRelease(repo, tag) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
const githubToken = getGitHubToken();
|
||||
const options = githubToken.length > 0 ? { auth: githubToken } : {};
|
||||
const octokit = new GitHubDotCom(options);
|
||||
return (yield octokit.request('GET /repos/{owner}/{repo}/releases/tags/{tag}', {
|
||||
owner: c.GRAALVM_GH_USER,
|
||||
repo,
|
||||
tag
|
||||
})).data;
|
||||
});
|
||||
}
|
||||
exports.getTaggedRelease = getTaggedRelease;
|
||||
function downloadAndExtractJDK(downloadUrl) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
return findJavaHomeInSubfolder(yield extract(yield tc.downloadTool(downloadUrl)));
|
||||
|
||||
37
package-lock.json
generated
37
package-lock.json
generated
@@ -223,9 +223,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@azure/core-http": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-3.0.0.tgz",
|
||||
"integrity": "sha512-BxI2SlGFPPz6J1XyZNIVUf0QZLBKFX+ViFjKOkzqD18J1zOINIQ8JSBKKr+i+v8+MB6LacL6Nn/sP/TE13+s2Q==",
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-3.0.1.tgz",
|
||||
"integrity": "sha512-A3x+um3cAPgQe42Lu7Iv/x8/fNjhL/nIoEfqFxfn30EyxK6zC13n+OUxzZBRC0IzQqssqIbt4INf5YG7lYYFtw==",
|
||||
"dependencies": {
|
||||
"@azure/abort-controller": "^1.0.0",
|
||||
"@azure/core-auth": "^1.3.0",
|
||||
@@ -240,7 +240,7 @@
|
||||
"tslib": "^2.2.0",
|
||||
"tunnel": "^0.0.6",
|
||||
"uuid": "^8.3.0",
|
||||
"xml2js": "^0.4.19"
|
||||
"xml2js": "^0.5.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
@@ -259,18 +259,6 @@
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/@azure/core-http/node_modules/xml2js": {
|
||||
"version": "0.4.23",
|
||||
"resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz",
|
||||
"integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==",
|
||||
"dependencies": {
|
||||
"sax": ">=0.6.0",
|
||||
"xmlbuilder": "~11.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@azure/core-lro": {
|
||||
"version": "2.5.2",
|
||||
"resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.5.2.tgz",
|
||||
@@ -7495,9 +7483,9 @@
|
||||
}
|
||||
},
|
||||
"@azure/core-http": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-3.0.0.tgz",
|
||||
"integrity": "sha512-BxI2SlGFPPz6J1XyZNIVUf0QZLBKFX+ViFjKOkzqD18J1zOINIQ8JSBKKr+i+v8+MB6LacL6Nn/sP/TE13+s2Q==",
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-3.0.1.tgz",
|
||||
"integrity": "sha512-A3x+um3cAPgQe42Lu7Iv/x8/fNjhL/nIoEfqFxfn30EyxK6zC13n+OUxzZBRC0IzQqssqIbt4INf5YG7lYYFtw==",
|
||||
"requires": {
|
||||
"@azure/abort-controller": "^1.0.0",
|
||||
"@azure/core-auth": "^1.3.0",
|
||||
@@ -7512,7 +7500,7 @@
|
||||
"tslib": "^2.2.0",
|
||||
"tunnel": "^0.0.6",
|
||||
"uuid": "^8.3.0",
|
||||
"xml2js": "^0.4.19"
|
||||
"xml2js": "^0.5.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"form-data": {
|
||||
@@ -7524,15 +7512,6 @@
|
||||
"combined-stream": "^1.0.8",
|
||||
"mime-types": "^2.1.12"
|
||||
}
|
||||
},
|
||||
"xml2js": {
|
||||
"version": "0.4.23",
|
||||
"resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz",
|
||||
"integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==",
|
||||
"requires": {
|
||||
"sax": ">=0.6.0",
|
||||
"xmlbuilder": "~11.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import * as core from '@actions/core'
|
||||
import {getLatestRelease, toSemVer} from '../utils'
|
||||
import {getTaggedRelease, toSemVer} from '../utils'
|
||||
import {lt, major, minor, valid} from 'semver'
|
||||
import {findGraalVMVersion} from '../graalvm'
|
||||
import {GRAALVM_RELEASES_REPO} from '../constants'
|
||||
@@ -15,7 +15,10 @@ export async function checkForUpdates(
|
||||
return
|
||||
}
|
||||
|
||||
const latestRelease = await getLatestRelease(GRAALVM_RELEASES_REPO)
|
||||
const latestRelease = await getTaggedRelease(
|
||||
GRAALVM_RELEASES_REPO,
|
||||
'vm-22.3.1'
|
||||
)
|
||||
const latestGraalVMVersion = findGraalVMVersion(latestRelease)
|
||||
const selectedVersion = toSemVer(graalVMVersion)
|
||||
const latestVersion = toSemVer(latestGraalVMVersion)
|
||||
|
||||
@@ -2,7 +2,8 @@ import * as c from './constants'
|
||||
import {
|
||||
downloadAndExtractJDK,
|
||||
downloadExtractAndCacheJDK,
|
||||
getLatestRelease
|
||||
getLatestRelease,
|
||||
getTaggedRelease
|
||||
} from './utils'
|
||||
import {downloadGraalVMEE} from './gds'
|
||||
import {downloadTool} from '@actions/tool-cache'
|
||||
@@ -15,10 +16,14 @@ export async function setUpGraalVMLatest(
|
||||
gdsToken: string,
|
||||
javaVersion: string
|
||||
): Promise<string> {
|
||||
const lockedVersion = '22.3.1'
|
||||
if (gdsToken.length > 0) {
|
||||
return setUpGraalVMRelease(gdsToken, c.VERSION_LATEST, javaVersion)
|
||||
return setUpGraalVMRelease(gdsToken, lockedVersion, javaVersion)
|
||||
}
|
||||
const latestRelease = await getLatestRelease(c.GRAALVM_RELEASES_REPO)
|
||||
const latestRelease = await getTaggedRelease(
|
||||
c.GRAALVM_RELEASES_REPO,
|
||||
GRAALVM_TAG_PREFIX + lockedVersion
|
||||
)
|
||||
const version = findGraalVMVersion(latestRelease)
|
||||
return setUpGraalVMRelease(gdsToken, version, javaVersion)
|
||||
}
|
||||
|
||||
@@ -19,7 +19,9 @@ async function run(): Promise<void> {
|
||||
const javaVersion = core.getInput(c.INPUT_JAVA_VERSION, {required: true})
|
||||
const componentsString: string = core.getInput(c.INPUT_COMPONENTS)
|
||||
const components: string[] =
|
||||
componentsString.length > 0 ? componentsString.split(',') : []
|
||||
componentsString.length > 0
|
||||
? componentsString.split(',').map(x => x.trim())
|
||||
: []
|
||||
const setJavaHome = core.getInput(c.INPUT_SET_JAVA_HOME) === 'true'
|
||||
const cache = core.getInput(c.INPUT_CACHE)
|
||||
const enableCheckForUpdates =
|
||||
|
||||
16
src/utils.ts
16
src/utils.ts
@@ -47,6 +47,22 @@ export async function getLatestRelease(
|
||||
).data
|
||||
}
|
||||
|
||||
export async function getTaggedRelease(
|
||||
repo: string,
|
||||
tag: string
|
||||
): Promise<c.LatestReleaseResponse['data']> {
|
||||
const githubToken = getGitHubToken()
|
||||
const options = githubToken.length > 0 ? {auth: githubToken} : {}
|
||||
const octokit = new GitHubDotCom(options)
|
||||
return (
|
||||
await octokit.request('GET /repos/{owner}/{repo}/releases/tags/{tag}', {
|
||||
owner: c.GRAALVM_GH_USER,
|
||||
repo,
|
||||
tag
|
||||
})
|
||||
).data
|
||||
}
|
||||
|
||||
export async function downloadAndExtractJDK(
|
||||
downloadUrl: string
|
||||
): Promise<string> {
|
||||
|
||||
Reference in New Issue
Block a user