mirror of
https://github.com/GoTestTools/gotestfmt-action.git
synced 2026-02-20 06:31:45 +00:00
More testing
This commit is contained in:
parent
efd552040f
commit
c05c6f8de6
1 changed files with 9 additions and 7 deletions
16
index.js
16
index.js
|
|
@ -3,7 +3,7 @@ const { Octokit } = require("@octokit/rest");
|
||||||
const fs = require("fs")
|
const fs = require("fs")
|
||||||
const { execSync } = require("child_process")
|
const { execSync } = require("child_process")
|
||||||
|
|
||||||
async function downloadRelease(octokit, org, repo, release) {
|
async function downloadRelease(octokit, org, repo, release, token) {
|
||||||
const releaseAssets = await octokit.rest.repos.listReleaseAssets({
|
const releaseAssets = await octokit.rest.repos.listReleaseAssets({
|
||||||
owner: org,
|
owner: org,
|
||||||
repo: repo,
|
repo: repo,
|
||||||
|
|
@ -13,9 +13,11 @@ async function downloadRelease(octokit, org, repo, release) {
|
||||||
console.log("Examining release asset " + asset.name + " at " + asset.browser_download_url + " ...")
|
console.log("Examining release asset " + asset.name + " at " + asset.browser_download_url + " ...")
|
||||||
if (asset.name.endsWith("_linux_amd64.tar.gz")) {
|
if (asset.name.endsWith("_linux_amd64.tar.gz")) {
|
||||||
console.log("Found Linux binary named " + asset.name + " at " + asset.browser_download_url + " , attempting download...")
|
console.log("Found Linux binary named " + asset.name + " at " + asset.browser_download_url + " , attempting download...")
|
||||||
const response = await octokit.request("GET " + asset.browser_download_url)
|
if (token) {
|
||||||
console.log("Writing gotestfmt to ./tmp/gotestfmt.tar.gz...")
|
execSync("curl -o /tmp/gotestfmt.tar.gz -H \"Authorization: Bearer " + token + "\" " + asset.browser_download_url)
|
||||||
fs.writeFileSync("/tmp/gotestfmt.tar.gz", response.data, {encoding: 'binary'})
|
} else {
|
||||||
|
execSync("curl -o /tmp/gotestfmt.tar.gz " + asset.browser_download_url)
|
||||||
|
}
|
||||||
console.log("Creating /usr/local/lib/gotestfmt directory...")
|
console.log("Creating /usr/local/lib/gotestfmt directory...")
|
||||||
execSync("sudo mkdir -p /usr/local/lib/gotestfmt")
|
execSync("sudo mkdir -p /usr/local/lib/gotestfmt")
|
||||||
console.log("Unpacking tar file...")
|
console.log("Unpacking tar file...")
|
||||||
|
|
@ -31,7 +33,7 @@ async function downloadRelease(octokit, org, repo, release) {
|
||||||
throw "No release asset matched criteria."
|
throw "No release asset matched criteria."
|
||||||
}
|
}
|
||||||
|
|
||||||
async function downloadGofmt(octokit, version, versionPrefix, org, repo) {
|
async function downloadGofmt(octokit, version, versionPrefix, org, repo, token) {
|
||||||
if (version !== "") {
|
if (version !== "") {
|
||||||
if (!version.startsWith(versionPrefix)) {
|
if (!version.startsWith(versionPrefix)) {
|
||||||
throw "Specified version " + version + " does not start with required version prefix " + versionPrefix + "."
|
throw "Specified version " + version + " does not start with required version prefix " + versionPrefix + "."
|
||||||
|
|
@ -51,7 +53,7 @@ async function downloadGofmt(octokit, version, versionPrefix, org, repo) {
|
||||||
if ((version !== "" && release.name === version) || (!release.prerelease && release.name.startsWith(versionPrefix))) {
|
if ((version !== "" && release.name === version) || (!release.prerelease && release.name.startsWith(versionPrefix))) {
|
||||||
console.log("Found release " + release.name + " matching criteria, attempting to download binary...")
|
console.log("Found release " + release.name + " matching criteria, attempting to download binary...")
|
||||||
try {
|
try {
|
||||||
await downloadRelease(octokit, org, repo, release)
|
await downloadRelease(octokit, org, repo, release, token)
|
||||||
return
|
return
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
tries++
|
tries++
|
||||||
|
|
@ -78,7 +80,7 @@ async function main() {
|
||||||
const octokit = new Octokit({
|
const octokit = new Octokit({
|
||||||
auth: token,
|
auth: token,
|
||||||
})
|
})
|
||||||
await downloadGofmt(octokit, version, versionPrefix, org, repo)
|
await downloadGofmt(octokit, version, versionPrefix, org, repo, token)
|
||||||
console.log("Setup complete.")
|
console.log("Setup complete.")
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.log("Setup failed.")
|
console.log("Setup failed.")
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue