2
2
mirror of https://github.com/octoleo/restic.git synced 2024-11-11 15:51:02 +00:00

Merge pull request #3208 from restic/add-mips

Add mips* architectures to CI and release
This commit is contained in:
MichaelEischer 2021-01-03 16:06:10 +01:00 committed by GitHub
commit aa0faa8c7d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 29 additions and 11 deletions

View File

@ -184,12 +184,30 @@ jobs:
if: matrix.check_changelog if: matrix.check_changelog
cross_compile: cross_compile:
strategy:
# ATTENTION: the list of architectures must be in sync with helpers/build-release-binaries/main.go!
matrix:
# run cross-compile in two batches parallel so the overall tests run faster
targets:
- "linux/386 linux/amd64 linux/arm linux/arm64 linux/ppc64le linux/mips linux/mipsle linux/mips64 linux/mips64le \
openbsd/386 openbsd/amd64"
- "freebsd/386 freebsd/amd64 freebsd/arm \
aix/ppc64 \
darwin/amd64 \
netbsd/386 netbsd/amd64 \
windows/386 windows/amd64 \
solaris/amd64"
env: env:
go: 1.15.x go: 1.15.x
GOPROXY: https://proxy.golang.org GOPROXY: https://proxy.golang.org
runs-on: ubuntu-latest runs-on: ubuntu-latest
name: Cross Compile for ${{ matrix.targets }}
steps: steps:
- name: Set up Go ${{ env.go }} - name: Set up Go ${{ env.go }}
uses: actions/setup-go@v2 uses: actions/setup-go@v2
@ -203,18 +221,10 @@ jobs:
run: | run: |
go get github.com/mitchellh/gox go get github.com/mitchellh/gox
# ATTENTION: the list of architectures must be in sync with helpers/build-release-binaries/main.go! - name: Cross-compile with gox for ${{ matrix.targets }}
- name: Cross-compile with gox
env: env:
GOFLAGS: "-trimpath" GOFLAGS: "-trimpath"
GOX_ARCHS: "aix/ppc64 \ GOX_ARCHS: "${{ matrix.targets }}"
darwin/amd64 \
freebsd/386 freebsd/amd64 freebsd/arm \
linux/386 linux/amd64 linux/arm linux/arm64 linux/ppc64le \
netbsd/386 netbsd/amd64 \
openbsd/386 openbsd/amd64 \
windows/386 windows/amd64 \
solaris/amd64"
run: | run: |
mkdir build-output mkdir build-output
gox -parallel 2 -verbose -osarch "$GOX_ARCHS" -output "build-output/{{.Dir}}_{{.OS}}_{{.Arch}}" ./cmd/restic gox -parallel 2 -verbose -osarch "$GOX_ARCHS" -output "build-output/{{.Dir}}_{{.OS}}_{{.Arch}}" ./cmd/restic

View File

@ -0,0 +1,8 @@
Enhancement: Add release binaries for MIPS architectures
We've added a few new architectures for Linux to the release binaries: `mips`,
`mipsle`, `mips64`, and `mip64le`. MIPS is mostly used for low-end embedded
systems.
https://github.com/restic/restic/issues/3191
https://github.com/restic/restic/pull/3208

View File

@ -226,7 +226,7 @@ var defaultBuildTargets = map[string][]string{
"aix": {"ppc64"}, "aix": {"ppc64"},
"darwin": {"amd64"}, "darwin": {"amd64"},
"freebsd": {"386", "amd64", "arm"}, "freebsd": {"386", "amd64", "arm"},
"linux": {"386", "amd64", "arm", "arm64", "ppc64le"}, "linux": {"386", "amd64", "arm", "arm64", "ppc64le", "mips", "mipsle", "mips64", "mips64le"},
"netbsd": {"386", "amd64"}, "netbsd": {"386", "amd64"},
"openbsd": {"386", "amd64"}, "openbsd": {"386", "amd64"},
"windows": {"386", "amd64"}, "windows": {"386", "amd64"},