Support rollForward option from global.json

This commit is contained in:
Vladimir Safonkin
2021-08-20 15:43:49 +03:00
parent 8309d4ee7e
commit 13fd5bf191
3 changed files with 51 additions and 14 deletions

View File

@ -19,13 +19,7 @@ export async function run() {
core.debug('No version found, trying to find version from global.json');
const globalJsonPath = path.join(process.cwd(), 'global.json');
if (fs.existsSync(globalJsonPath)) {
const globalJson = JSON.parse(
// .trim() is necessary to strip BOM https://github.com/nodejs/node/issues/20649
fs.readFileSync(globalJsonPath, {encoding: 'utf8'}).trim()
);
if (globalJson.sdk && globalJson.sdk.version) {
version = globalJson.sdk.version;
}
version = getVersionFromGlobalJson(globalJsonPath)
}
}
@ -54,4 +48,21 @@ export async function run() {
}
}
function getVersionFromGlobalJson(globalJsonPath: string): string {
let version: string = ""
const globalJson = JSON.parse(
// .trim() is necessary to strip BOM https://github.com/nodejs/node/issues/20649
fs.readFileSync(globalJsonPath, {encoding: 'utf8'}).trim()
);
if (globalJson.sdk && globalJson.sdk.version) {
version = globalJson.sdk.version;
const rollForward = globalJson.sdk.rollForward
if (rollForward && (rollForward === 'latestFeature' || rollForward === 'latestPatch')) {
const [major, minor] = version.split('.')
version = `${major}.${minor}`
}
}
return version
}
run();