Skip to content

Commit 85ad4dc

Browse files
authored
Merge pull request #84 from endorama/github-api-rate-limiting-improvements
GitHub api rate limiting improvements
2 parents 2eb7257 + 1b6632f commit 85ad4dc

File tree

3 files changed

+23
-0
lines changed

3 files changed

+23
-0
lines changed

__tests__/main.test.ts

+12
Original file line numberDiff line numberDiff line change
@@ -90,5 +90,17 @@ describe("installer tests", () => {
9090
expect(fs.existsSync(path.join(taskdir, "bin", "task"))).toBe(true);
9191
}
9292
});
93+
94+
it("Skips version computing when a valid semver is provided", async () => {
95+
await installer.getTask("3.0.0", "");
96+
const taskdir = path.join(toolDir, "task", "3.0.0", os.arch());
97+
98+
expect(fs.existsSync(`${taskdir}.complete`)).toBe(true);
99+
if (IS_WINDOWS) {
100+
expect(fs.existsSync(path.join(taskdir, "bin", "task.exe"))).toBe(true);
101+
} else {
102+
expect(fs.existsSync(path.join(taskdir, "bin", "task"))).toBe(true);
103+
}
104+
});
93105
});
94106
});

lib/installer.js

+5
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,11 @@ function fetchVersions(repoToken) {
122122
// Compute an actual version starting from the `version` configuration param.
123123
function computeVersion(version, repoToken) {
124124
return __awaiter(this, void 0, void 0, function* () {
125+
// return if passed version is a valid semver
126+
if (semver.valid(version)) {
127+
core.debug("valid semver provided, skipping computing actual version");
128+
return `v${version}`; // Task releases are v-prefixed
129+
}
125130
// strip leading `v` char (will be re-added later)
126131
if (version.startsWith("v")) {
127132
version = version.slice(1, version.length);

src/installer.ts

+6
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,12 @@ async function computeVersion(
123123
version: string,
124124
repoToken: string
125125
): Promise<string> {
126+
// return if passed version is a valid semver
127+
if (semver.valid(version)) {
128+
core.debug("valid semver provided, skipping computing actual version");
129+
return `v${version}`; // Task releases are v-prefixed
130+
}
131+
126132
// strip leading `v` char (will be re-added later)
127133
if (version.startsWith("v")) {
128134
version = version.slice(1, version.length);

0 commit comments

Comments
 (0)