mirror of
https://github.com/actions/setup-node.git
synced 2025-04-22 09:21:00 +00:00
Add lts version
This commit is contained in:
parent
65b4c0f1d8
commit
7e764bb37e
2 changed files with 32 additions and 0 deletions
|
@ -44,6 +44,9 @@ if (!tempDirectory) {
|
|||
}
|
||||
function getNode(versionSpec) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
if (versionSpec.toLowerCase() === 'lts') {
|
||||
versionSpec = getLtsVersion();
|
||||
}
|
||||
// check cache
|
||||
let toolPath;
|
||||
toolPath = tc.find('node', versionSpec);
|
||||
|
@ -84,6 +87,19 @@ function getNode(versionSpec) {
|
|||
});
|
||||
}
|
||||
exports.getNode = getNode;
|
||||
// Schedule based off https://nodejs.org/en/about/releases/. TODO: would be nice to automate this so we don't drift
|
||||
function getLtsVersion() {
|
||||
const today = new Date();
|
||||
if (today < new Date(2019, 9, 22)) {
|
||||
return '10.x';
|
||||
}
|
||||
else if (today < new Date(2020, 9, 20)) {
|
||||
return '12.x';
|
||||
}
|
||||
else {
|
||||
return '14.x';
|
||||
}
|
||||
}
|
||||
function queryLatestMatch(versionSpec) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
// node offers a json list of versions
|
||||
|
|
|
@ -36,6 +36,10 @@ interface INodeVersion {
|
|||
}
|
||||
|
||||
export async function getNode(versionSpec: string) {
|
||||
if (versionSpec.toLowerCase() === 'lts') {
|
||||
versionSpec = getLtsVersion();
|
||||
}
|
||||
|
||||
// check cache
|
||||
let toolPath: string;
|
||||
toolPath = tc.find('node', versionSpec);
|
||||
|
@ -81,6 +85,18 @@ export async function getNode(versionSpec: string) {
|
|||
core.addPath(toolPath);
|
||||
}
|
||||
|
||||
// Schedule based off https://nodejs.org/en/about/releases/. TODO: would be nice to automate this so we don't drift
|
||||
function getLtsVersion(): string {
|
||||
const today = new Date();
|
||||
if (today < new Date(2019, 9, 22)) {
|
||||
return '10.x';
|
||||
} else if (today < new Date(2020, 9, 20)) {
|
||||
return '12.x';
|
||||
} else {
|
||||
return '14.x';
|
||||
}
|
||||
}
|
||||
|
||||
async function queryLatestMatch(versionSpec: string): Promise<string> {
|
||||
// node offers a json list of versions
|
||||
let dataFileName: string;
|
||||
|
|
Loading…
Add table
Reference in a new issue