handle .x version syntax
This commit is contained in:
@@ -24,6 +24,7 @@ const tc = __importStar(require("@actions/tool-cache"));
|
||||
const fs = __importStar(require("fs"));
|
||||
const path = __importStar(require("path"));
|
||||
const restm = __importStar(require("typed-rest-client/RestClient"));
|
||||
const semver = __importStar(require("semver"));
|
||||
const v4_1 = __importDefault(require("uuid/v4"));
|
||||
const exec_1 = require("@actions/exec/lib/exec");
|
||||
const IS_WINDOWS = process.platform === 'win32';
|
||||
@@ -179,6 +180,14 @@ function getLatestVersion(version, channel) {
|
||||
if (!storage) {
|
||||
throw new Error('unable to get latest version');
|
||||
}
|
||||
if (version.endsWith('.x')) {
|
||||
const sver = version.slice(0, version.length - 2);
|
||||
const releases = storage.releases.filter(release => release.version.startsWith(`v${sver}`) && release.channel === channel);
|
||||
const versions = releases.map(release => release.version.slice(1, release.version.length));
|
||||
const sortedVersions = versions.sort(semver.rcompare);
|
||||
core.debug(`latest version of ${version} from channel ${channel} is ${sortedVersions[0]}`);
|
||||
return sortedVersions[0];
|
||||
}
|
||||
const channelVersion = storage.releases.find(release => release.hash === storage.current_release[channel]);
|
||||
if (!channelVersion) {
|
||||
throw new Error(`unable to get latest version from channel ${channel}`);
|
||||
|
||||
Reference in New Issue
Block a user