Skip to content

Add MIPS arch support #953

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Feb 5, 2020
Merged

Add MIPS arch support #953

merged 2 commits into from
Feb 5, 2020

Conversation

daixiang0
Copy link
Contributor

Signed-off-by: Xiang Dai [email protected]

Fix #935

Refer to prometheus release, support mips64 and mips64le.

@claassistantio
Copy link

claassistantio commented Feb 3, 2020

CLA assistant check
All committers have signed the CLA.

Signed-off-by: Xiang Dai <[email protected]>
@daixiang0 daixiang0 requested a review from tpounds February 3, 2020 02:43
@daixiang0 daixiang0 changed the title .goreleaser.yml: add mips support Add MIPS arch support Feb 3, 2020
@ernado
Copy link
Member

ernado commented Feb 3, 2020

Thank you! We should check that goreleaser will build project with such config.

I'll do it today, or you can try to do it (there should be something like snapshot mode in goreleaser).

@ernado
Copy link
Member

ernado commented Feb 4, 2020

I've tried to generate binaries with goreleaser release --rm-dist --snapshot, but got artifacts for MIPS:

$ goreleaser release --rm-dist --snapshot

   • releasing using goreleaser 0.125.0...
   • loading config file       file=.goreleaser.yml
   • RUNNING BEFORE HOOKS
   • LOADING ENVIRONMENT VARIABLES
      • pipe skipped              error=publishing is disabled
   • GETTING AND VALIDATING GIT STATE
      • releasing v1.23.2, commit 9b3e3cfbc50567069b5c78de8217bbc94c7936a2
      • pipe skipped              error=disabled during snapshot mode
   • PARSING TAG      
   • SETTING DEFAULTS 
      • LOADING ENVIRONMENT VARIABLES
      • SNAPSHOTING      
      • GITHUB/GITLAB/GITEA RELEASES
      • PROJECT NAME     
      • BUILDING BINARIES
      • ARCHIVES         
      • LINUX PACKAGES WITH NFPM
      • SNAPCRAFT PACKAGES
      • CALCULATING CHECKSUMS
      • SIGNING ARTIFACTS
      • DOCKER IMAGES    
      • ARTIFACTORY      
      • BLOB             
      • HOMEBREW TAP FORMULA
      • SCOOP MANIFEST   
   • SNAPSHOTING      
   • CHECKING ./DIST  
      • --rm-dist is set, cleaning it up
   • WRITING EFFECTIVE CONFIG FILE
      • writing                   config=dist/config.yaml
   • GENERATING CHANGELOG
      • pipe skipped              error=not available for snapshots
   • BUILDING BINARIES
      • building                  binary=/src/golangci-lint/dist/golangci-lint_freebsd_386/golangci-lint
      • building                  binary=/src/golangci-lint/dist/golangci-lint_darwin_amd64/golangci-lint
      • building                  binary=/src/golangci-lint/dist/golangci-lint_linux_arm_6/golangci-lint
      • building                  binary=/src/golangci-lint/dist/golangci-lint_linux_s390x/golangci-lint
      • building                  binary=/src/golangci-lint/dist/golangci-lint_freebsd_amd64/golangci-lint
      • building                  binary=/src/golangci-lint/dist/golangci-lint_freebsd_arm_6/golangci-lint
      • building                  binary=/src/golangci-lint/dist/golangci-lint_freebsd_arm_7/golangci-lint
      • building                  binary=/src/golangci-lint/dist/golangci-lint_linux_arm_7/golangci-lint
      • building                  binary=/src/golangci-lint/dist/golangci-lint_linux_ppc64le/golangci-lint
      • building                  binary=/src/golangci-lint/dist/golangci-lint_windows_386/golangci-lint.exe
      • building                  binary=/src/golangci-lint/dist/golangci-lint_darwin_386/golangci-lint
      • building                  binary=/src/golangci-lint/dist/golangci-lint_windows_amd64/golangci-lint.exe
      • building                  binary=/src/golangci-lint/dist/golangci-lint_linux_amd64/golangci-lint
      • building                  binary=/src/golangci-lint/dist/golangci-lint_linux_arm64/golangci-lint
      • building                  binary=/src/golangci-lint/dist/golangci-lint_linux_386/golangci-lint
   • ARCHIVES         
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-freebsd-amd64.tar.gz
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-darwin-amd64.tar.gz
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-linux-s390x.tar.gz
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-linux-386.tar.gz
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-freebsd-armv7.tar.gz
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-linux-armv6.tar.gz
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-windows-amd64.zip
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-linux-armv7.tar.gz
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-freebsd-386.tar.gz
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-freebsd-armv6.tar.gz
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-linux-amd64.tar.gz
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-darwin-386.tar.gz
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-linux-ppc64le.tar.gz
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-linux-arm64.tar.gz
      • creating                  archive=dist/golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-windows-386.zip
   • LINUX PACKAGES WITH NFPM
   • SNAPCRAFT PACKAGES
   • CALCULATING CHECKSUMS
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-windows-386.zip
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-linux-armv6.tar.gz
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-freebsd-amd64.tar.gz
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-linux-386.tar.gz
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-linux-s390x.tar.gz
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-darwin-amd64.tar.gz
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-freebsd-armv7.tar.gz
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-darwin-386.tar.gz
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-linux-armv7.tar.gz
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-freebsd-386.tar.gz
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-freebsd-armv6.tar.gz
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-linux-ppc64le.tar.gz
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-linux-amd64.tar.gz
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-windows-amd64.zip
      • checksumming              file=golangci-lint-SNAPSHOT-9b3e3cfbc50567069b5c78de8217bbc94c7936a2-linux-arm64.tar.gz
   • SIGNING ARTIFACTS
      • pipe skipped              error=artifact signing is disabled
   • DOCKER IMAGES    
      • building docker image     image=golangci/golangci-lint:latest-alpine
      • building docker image     image=golangci/golangci-lint:latest
      • pipe skipped              error=publishing is disabled
   • PUBLISHING       
      • pipe skipped              error=publishing is disabled
   • release succeeded after 10.56s

I'm not sure what I'm doing wrong, seems like config is fine :(

@daixiang0
Copy link
Contributor Author

daixiang0 commented Feb 4, 2020

@ernado I test at local:

Step 4/4 : CMD ["golangci-lint"]
 ---> Running in 26612faae082
Removing intermediate container 26612faae082
 ---> 1ba4c0b878e8
Successfully built 1ba4c0b878e8
Successfully tagged golangci/golangci-lint:latest-alpine
Successfully tagged golangci/golangci-lint:v0.0.0-alpine
Successfully tagged golangci/golangci-lint:v0.0-alpine

      • pipe skipped              error=publishing is disabled
   • PUBLISHING       
      • pipe skipped              error=publishing is disabled
   • release succeeded after 423.64s

[root golangci-lint]# echo $?
0
[root golangci-lint]# ./bin/goreleaser --version

version: 0.125.0
commit: a4c91105b54583ce1450876b493f9700b1d4b712
built at: 2020-01-30T14:28:45Z
built by: goreleaser

Enable debug mode with --debug, no more error info.

@ernado
Copy link
Member

ernado commented Feb 4, 2020

I see that there are no error, but I can't find any generated MIPS binary in dist.

@daixiang0
Copy link
Contributor Author

@ernado i have found the root cause, refer to https://goreleaser.com/customization/#Builds and https://golang.org/doc/install/source#environment.
New commit would generate mips binarys.

@ernado
Copy link
Member

ernado commented Feb 5, 2020

If we decide to enable both hardfloat and softfloat, I'll leave this as reference: goreleaser/goreleaser#1329

LGTM

@ernado ernado merged commit f9d5832 into golangci:master Feb 5, 2020
@daixiang0 daixiang0 deleted the mips branch February 6, 2020 02:23
@caarlos0
Copy link

caarlos0 commented Feb 6, 2020

New version is out, should fix the issue, sorry for the trouble :)

https://github.com/goreleaser/goreleaser/releases/tag/v0.126.0

@ernado
Copy link
Member

ernado commented Feb 6, 2020

There were no trouble, I've referenced that issue just as memo, sorry for bothering and thanks for following :)

@ldez ldez mentioned this pull request Feb 6, 2021
@ldez ldez added this to the v1.23 milestone Mar 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add mips architecture support
6 participants