mirror of
https://github.com/actions/setup-node.git
synced 2026-05-15 10:21:22 +00:00
feat: add support for mise.toml file
This commit is contained in:
parent
86d7342e00
commit
d8469e87d5
@ -114,6 +114,9 @@ describe('main tests', () => {
|
||||
${'{"devEngines": {"runtime": [{"name": "bun"}, {"name": "node", "version": "22.0.0"}]}}'} | ${'22.0.0'}
|
||||
${'[tools]\ngo="latest"\nnode = "24.10"'} | ${'24.10'}
|
||||
${'[tools]\nnode = "22.12"'} | ${'22.12'}
|
||||
${'[tools]\ngo="latest"\nnode = "24.10"'} | ${'24.10'}
|
||||
${'[tools]\nnode = { version = "22.20" }'} | ${'22.20'}
|
||||
${'[tools]\nnode = { postinstall = "corepack enable" }'} | ${null}
|
||||
`.it('parses "$contents"', ({contents, expected}) => {
|
||||
const existsSpy = jest.spyOn(fs, 'existsSync');
|
||||
existsSpy.mockImplementation(() => true);
|
||||
|
||||
5
dist/cache-save/index.js
vendored
5
dist/cache-save/index.js
vendored
@ -50602,7 +50602,7 @@ function getNodeVersionFromFile(versionFilePath) {
|
||||
catch {
|
||||
core.info('Node version file is not JSON file');
|
||||
}
|
||||
// Try parsing the file as an MISE `mise.toml` file.
|
||||
// Try parsing the file as a mise `mise.toml` file.
|
||||
try {
|
||||
const manifest = (0, js_toml_1.load)(contents);
|
||||
if (manifest?.tools?.node) {
|
||||
@ -50610,8 +50610,11 @@ function getNodeVersionFromFile(versionFilePath) {
|
||||
if (typeof node === 'object' && node?.version) {
|
||||
return node.version;
|
||||
}
|
||||
if (typeof node === 'string') {
|
||||
return node;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
catch {
|
||||
core.info('Node version file is not TOML file');
|
||||
|
||||
5
dist/setup/index.js
vendored
5
dist/setup/index.js
vendored
@ -84097,7 +84097,7 @@ function getNodeVersionFromFile(versionFilePath) {
|
||||
catch {
|
||||
core.info('Node version file is not JSON file');
|
||||
}
|
||||
// Try parsing the file as an MISE `mise.toml` file.
|
||||
// Try parsing the file as a mise `mise.toml` file.
|
||||
try {
|
||||
const manifest = (0, js_toml_1.load)(contents);
|
||||
if (manifest?.tools?.node) {
|
||||
@ -84105,8 +84105,11 @@ function getNodeVersionFromFile(versionFilePath) {
|
||||
if (typeof node === 'object' && node?.version) {
|
||||
return node.version;
|
||||
}
|
||||
if (typeof node === 'string') {
|
||||
return node;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
catch {
|
||||
core.info('Node version file is not TOML file');
|
||||
|
||||
@ -69,7 +69,7 @@ export function getNodeVersionFromFile(versionFilePath: string): string | null {
|
||||
core.info('Node version file is not JSON file');
|
||||
}
|
||||
|
||||
// Try parsing the file as an MISE `mise.toml` file.
|
||||
// Try parsing the file as a mise `mise.toml` file.
|
||||
try {
|
||||
const manifest: Record<string, any> = load(contents);
|
||||
if (manifest?.tools?.node) {
|
||||
@ -79,8 +79,12 @@ export function getNodeVersionFromFile(versionFilePath: string): string | null {
|
||||
return node.version;
|
||||
}
|
||||
|
||||
if (typeof node === 'string') {
|
||||
return node;
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
} catch {
|
||||
core.info('Node version file is not TOML file');
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user