chore: add ensure golanglint version
parent
013575e551
commit
23d6e9525e
@ -0,0 +1,35 @@
|
||||
#!/usr/bin/env zx
|
||||
|
||||
$.verbose = false;
|
||||
|
||||
async function getGoVersion() {
|
||||
const goVersionProcess = await $`go version`;
|
||||
const re = /go version go(.*) /
|
||||
return re.exec(goVersionProcess.stdout)[1]
|
||||
}
|
||||
|
||||
try {
|
||||
|
||||
let gitRoot = await $`git rev-parse --show-toplevel`;
|
||||
gitRoot = gitRoot.stdout.trim();
|
||||
const lintPath = `${gitRoot}/.github/workflows/golangci.yml`;
|
||||
const catOutput = await $`cat ${lintPath}`;
|
||||
const contents = catOutput.stdout;
|
||||
|
||||
let re = /version:\sv(.*)/
|
||||
const targetVersion = re.exec(contents)[1]
|
||||
|
||||
let currentVersion = await $`golangci-lint --version`
|
||||
re = /golangci-lint has version (.*) built.*/
|
||||
currentVersion = re.exec(currentVersion.stdout)[1]
|
||||
|
||||
let goVersion = await getGoVersion()
|
||||
goVersion = goVersion.substring(0, 4); // strip off the patch version
|
||||
if (currentVersion !== targetVersion) {
|
||||
await $`curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b /Users/chatton/.gvm/pkgsets/go${goVersion}/global/bin v${targetVersion}`
|
||||
console.log("updated to version " + targetVersion);
|
||||
}
|
||||
|
||||
} catch (e) {
|
||||
await $`exit 0`;
|
||||
}
|
||||
Loading…
Reference in New Issue