Create function for getting canonical CPU architecture
ci/woodpecker/push/woodpecker Pipeline was successful Details

This commit is contained in:
Elara 2022-11-30 22:02:36 -08:00
parent 4e71a5c35c
commit 7164aac0b4
2 changed files with 12 additions and 18 deletions

View File

@ -329,7 +329,7 @@ func buildPackage(ctx context.Context, script string, mgr manager.Manager) ([]st
pkgInfo := &nfpm.Info{
Name: vars.Name,
Description: vars.Description,
Arch: runtime.GOARCH,
Arch: cpu.Arch(),
Version: vars.Version,
Release: strconv.Itoa(vars.Release),
Homepage: vars.Homepage,
@ -353,10 +353,6 @@ func buildPackage(ctx context.Context, script string, mgr manager.Manager) ([]st
pkgInfo.Arch = "all"
}
if pkgInfo.Arch == "arm" {
pkgInfo.Arch = cpu.ARMVariant()
}
contents := []*files.Content{}
filepath.Walk(pkgdir, func(path string, fi os.FileInfo, err error) error {
trimmed := strings.TrimPrefix(path, pkgdir)
@ -479,11 +475,6 @@ func buildPackage(ctx context.Context, script string, mgr manager.Manager) ([]st
func genBuildEnv(info *distro.OSRelease) []string {
env := os.Environ()
arch := runtime.GOARCH
if arch == "arm" {
arch = cpu.ARMVariant()
}
env = append(
env,
"DISTRO_NAME="+info.Name,
@ -492,7 +483,7 @@ func genBuildEnv(info *distro.OSRelease) []string {
"DISTRO_VERSION_ID="+info.VersionID,
"DISTRO_ID_LIKE="+strings.Join(info.Like, " "),
"ARCH="+arch,
"ARCH="+cpu.Arch(),
"NCPU="+strconv.Itoa(runtime.NumCPU()),
)
@ -621,17 +612,11 @@ func archMatches(architectures []string) bool {
return true
}
arch := runtime.GOARCH
if arch == "arm" {
arch = cpu.ARMVariant()
}
if slices.Contains(architectures, "arm") {
architectures = append(architectures, cpu.ARMVariant())
}
return slices.Contains(architectures, arch)
return slices.Contains(architectures, cpu.Arch())
}
func setVersion(ctx context.Context, r *interp.Runner, to string) error {

View File

@ -20,6 +20,7 @@ package cpu
import (
"os"
"runtime"
"strings"
"golang.org/x/sys/cpu"
@ -42,3 +43,11 @@ func ARMVariant() string {
return "arm5"
}
}
func Arch() string {
arch := runtime.GOARCH
if arch == "arm" {
arch = ARMVariant()
}
return arch
}