mirror of
https://code.forgejo.org/actions/setup-node.git
synced 2024-11-06 03:55:47 +00:00
78148dae50
* Updates * Update * Update * Update * Update * Yarn sometimes prefers npmrc, so use same token * Description * Update readme * Feedback * Add type * new toolkit and scoped registries * npmrc in RUNNER_TEMP * Dont always auth * Try exporting blank token * Get auth working for now pending runner changes * Fix string interpolation for auth token. * Don't export both userconfigs * Update authutil.js * Add single quotes for authString * Fix the registry string. * Use userconfig and append trailing slash * Keep in root of repo * Try just adding auth token * Remove auth token * Try changes again * Add tests * Npm and GPR samples * Add types
46 lines
1.1 KiB
JavaScript
46 lines
1.1 KiB
JavaScript
'use strict';
|
|
const os = require('os');
|
|
const macosRelease = require('macos-release');
|
|
const winRelease = require('windows-release');
|
|
|
|
const osName = (platform, release) => {
|
|
if (!platform && release) {
|
|
throw new Error('You can\'t specify a `release` without specifying `platform`');
|
|
}
|
|
|
|
platform = platform || os.platform();
|
|
|
|
let id;
|
|
|
|
if (platform === 'darwin') {
|
|
if (!release && os.platform() === 'darwin') {
|
|
release = os.release();
|
|
}
|
|
|
|
const prefix = release ? (Number(release.split('.')[0]) > 15 ? 'macOS' : 'OS X') : 'macOS';
|
|
id = release ? macosRelease(release).name : '';
|
|
return prefix + (id ? ' ' + id : '');
|
|
}
|
|
|
|
if (platform === 'linux') {
|
|
if (!release && os.platform() === 'linux') {
|
|
release = os.release();
|
|
}
|
|
|
|
id = release ? release.replace(/^(\d+\.\d+).*/, '$1') : '';
|
|
return 'Linux' + (id ? ' ' + id : '');
|
|
}
|
|
|
|
if (platform === 'win32') {
|
|
if (!release && os.platform() === 'win32') {
|
|
release = os.release();
|
|
}
|
|
|
|
id = release ? winRelease(release) : '';
|
|
return 'Windows' + (id ? ' ' + id : '');
|
|
}
|
|
|
|
return platform;
|
|
};
|
|
|
|
module.exports = osName;
|