|
|
|
@ -174,7 +174,7 @@ class DotnetCoreInstaller {
|
|
|
|
getDownloadUrls(osSuffixes, version) {
|
|
|
|
getDownloadUrls(osSuffixes, version) {
|
|
|
|
return __awaiter(this, void 0, void 0, function* () {
|
|
|
|
return __awaiter(this, void 0, void 0, function* () {
|
|
|
|
let downloadUrls = [];
|
|
|
|
let downloadUrls = [];
|
|
|
|
var httpCallbackClient = new httpClient.HttpClient('setup-dotnet', [], {});
|
|
|
|
const httpCallbackClient = new httpClient.HttpClient('actions/setup-dotnet', [], {});
|
|
|
|
const releasesJsonUrl = yield this.getReleasesJsonUrl(httpCallbackClient, version.split('.'));
|
|
|
|
const releasesJsonUrl = yield this.getReleasesJsonUrl(httpCallbackClient, version.split('.'));
|
|
|
|
let releasesJSON = yield httpCallbackClient.get(releasesJsonUrl);
|
|
|
|
let releasesJSON = yield httpCallbackClient.get(releasesJsonUrl);
|
|
|
|
let releasesInfo = JSON.parse(yield releasesJSON.readBody())['releases'];
|
|
|
|
let releasesInfo = JSON.parse(yield releasesJSON.readBody())['releases'];
|
|
|
|
@ -212,18 +212,18 @@ class DotnetCoreInstaller {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
getReleasesJsonUrl(httpCallbackClient, versionParts) {
|
|
|
|
getReleasesJsonUrl(httpCallbackClient, versionParts) {
|
|
|
|
return __awaiter(this, void 0, void 0, function* () {
|
|
|
|
return __awaiter(this, void 0, void 0, function* () {
|
|
|
|
// First, get the location of the correct releases.json then get that.
|
|
|
|
|
|
|
|
const releasesIndex = yield httpCallbackClient.get(DotNetCoreIndexUrl);
|
|
|
|
const releasesIndex = yield httpCallbackClient.get(DotNetCoreIndexUrl);
|
|
|
|
let releasesInfo = JSON.parse(yield releasesIndex.readBody())['releases-index'];
|
|
|
|
let releasesInfo = JSON.parse(yield releasesIndex.readBody())['releases-index'];
|
|
|
|
releasesInfo = releasesInfo.filter((releaseInfo) => {
|
|
|
|
releasesInfo = releasesInfo.filter((info) => {
|
|
|
|
const sdkParts = releaseInfo['channel-version'].split('.');
|
|
|
|
// channel-version is the first 2 elements of the version (e.g. 2.1), filter out versions that don't match 2.1.x.
|
|
|
|
|
|
|
|
const sdkParts = info['channel-version'].split('.');
|
|
|
|
if (versionParts.length >= 2 && versionParts[1] != 'x') {
|
|
|
|
if (versionParts.length >= 2 && versionParts[1] != 'x') {
|
|
|
|
return versionParts[0] == sdkParts[0] && versionParts[1] == sdkParts[1];
|
|
|
|
return versionParts[0] == sdkParts[0] && versionParts[1] == sdkParts[1];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return versionParts[0] == sdkParts[0];
|
|
|
|
return versionParts[0] == sdkParts[0];
|
|
|
|
});
|
|
|
|
});
|
|
|
|
if (releasesInfo.length === 0) {
|
|
|
|
if (releasesInfo.length === 0) {
|
|
|
|
throw `Could not find info for this version at ${DotNetCoreIndexUrl}`;
|
|
|
|
throw `Could not find info for version ${versionParts.join('.')} at ${DotNetCoreIndexUrl}`;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return releasesInfo[0]['releases.json'];
|
|
|
|
return releasesInfo[0]['releases.json'];
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|