diff --git a/src/install.ts b/src/install.ts index 1f5083f..8d71ec7 100644 --- a/src/install.ts +++ b/src/install.ts @@ -1,6 +1,6 @@ import * as core from "@actions/core" import * as tc from "@actions/tool-cache" -import { exec, ExecOptions } from "child_process" +import { exec, ExecOptionsWithStringEncoding } from "child_process" import os from "os" import path from "path" import { promisify } from "util" @@ -82,7 +82,7 @@ async function goInstall(versionInfo: VersionInfo): Promise { const startedAt = Date.now() - const options: ExecOptions = { env: { ...process.env, CGO_ENABLED: "1" } } + const options: ExecOptionsWithStringEncoding = { env: { ...process.env, CGO_ENABLED: "1" } } const exres = await execShellCommand( `go install github.com/golangci/golangci-lint/v2/cmd/golangci-lint@${versionInfo.TargetVersion}`, @@ -160,21 +160,20 @@ function getAssetURL(versionInfo: VersionInfo): string { break } - let arch = os.arch() - switch (arch) { + let platformArch = "amd64" + switch (os.arch()) { case "arm64": - arch = "arm64" + platformArch = "arm64" break case "x64": - arch = "amd64" + platformArch = "amd64" break - case "x32": case "ia32": - arch = "386" + platformArch = "386" break } const noPrefix = versionInfo.TargetVersion.slice(1) - return `https://github.com/golangci/golangci-lint/releases/download/${versionInfo.TargetVersion}/golangci-lint-${noPrefix}-${platform}-${arch}.${ext}` + return `https://github.com/golangci/golangci-lint/releases/download/${versionInfo.TargetVersion}/golangci-lint-${noPrefix}-${platform}-${platformArch}.${ext}` } diff --git a/src/run.ts b/src/run.ts index 6418ab5..8f79b99 100644 --- a/src/run.ts +++ b/src/run.ts @@ -1,6 +1,6 @@ import * as core from "@actions/core" import * as github from "@actions/github" -import { exec, ExecOptions } from "child_process" +import { exec, ExecOptionsWithStringEncoding } from "child_process" import * as fs from "fs" import * as path from "path" import { promisify } from "util" @@ -116,7 +116,7 @@ async function runLint(binPath: string, patchPath: string): Promise { } } - const cmdArgs: ExecOptions = {} + const cmdArgs: ExecOptionsWithStringEncoding = {} const workingDirectory = core.getInput(`working-directory`) if (workingDirectory) { @@ -156,7 +156,7 @@ async function runLint(binPath: string, patchPath: string): Promise { core.info(`Ran golangci-lint in ${Date.now() - startedAt}ms`) } -async function runVerify(binPath: string, userArgsMap: Map, cmdArgs: ExecOptions): Promise { +async function runVerify(binPath: string, userArgsMap: Map, cmdArgs: ExecOptionsWithStringEncoding): Promise { const verify = core.getBooleanInput(`verify`, { required: true }) if (!verify) { return @@ -178,7 +178,7 @@ async function runVerify(binPath: string, userArgsMap: Map, cmdA printOutput(res) } -async function getConfigPath(binPath: string, userArgsMap: Map, cmdArgs: ExecOptions): Promise { +async function getConfigPath(binPath: string, userArgsMap: Map, cmdArgs: ExecOptionsWithStringEncoding): Promise { let cmdConfigPath = `${binPath} config path` if (userArgsMap.get("config")) { cmdConfigPath += ` --config=${userArgsMap.get("config")}`