mirror of
https://github.com/davidallendj/magellan.git
synced 2025-12-20 03:27:03 -07:00
refactor: Update Go version
This commit updates the Go version to the latest stable release and adds QEMU setup to the GitHub workflow. It also sets up the necessary environment variables required by GoReleaser. These changes ensure that the project is using the latest Go version and is ready for release. Adds support for more architectures, package types, and better docker image.
This commit is contained in:
parent
7941d6caad
commit
041d134079
7 changed files with 168 additions and 176 deletions
109
.goreleaser.yaml
109
.goreleaser.yaml
|
|
@ -7,12 +7,33 @@ before:
|
|||
- go-md2man -in README.md -out magellan.1
|
||||
|
||||
builds:
|
||||
- env:
|
||||
- CGO_ENABLED=1
|
||||
- binary: magellan
|
||||
# export GIT_STATE=$(if git diff-index --quiet HEAD --; then echo 'clean'; else echo 'dirty'; fi)
|
||||
# export BUILD_HOST=$(hostname)
|
||||
# export GO_VERSION=$(go version | awk '{print $3}')
|
||||
# export BUILD_USER=$(whoami)
|
||||
ldflags:
|
||||
- "-X main.GitCommit={{.Commit}} \
|
||||
-X main.BuildTime={{.Timestamp}} \
|
||||
-X main.Version={{.Version}} \
|
||||
-X main.GitBranch={{.Branch}} \
|
||||
-X main.GitTag={{.Tag}} \
|
||||
-X main.GitState={{ .Env.GIT_STATE }} \
|
||||
-X main.BuildHost={{ .Env.BUILD_HOST }} \
|
||||
-X main.GoVersion={{ .Env.GO_VERSION }} \
|
||||
-X main.BuildUser={{ .Env.BUILD_USER }} "
|
||||
goos:
|
||||
- linux
|
||||
- darwin
|
||||
- windows
|
||||
goarch:
|
||||
- amd64
|
||||
- arm64
|
||||
goamd64:
|
||||
- v3
|
||||
env:
|
||||
- CGO_ENABLED=0
|
||||
|
||||
archives:
|
||||
- format: tar.gz
|
||||
# this name template makes the OS and Arch compatible with the results of uname.
|
||||
|
|
@ -27,17 +48,55 @@ archives:
|
|||
- LICENSE
|
||||
- CHANGELOG.md
|
||||
- README.md
|
||||
- bin/magellan.sh
|
||||
- magellan.1
|
||||
|
||||
nfpms:
|
||||
- id: magellan
|
||||
formats:
|
||||
- deb
|
||||
- rpm
|
||||
- apk
|
||||
- archlinux
|
||||
maintainer: "David J. Allen <allend@lanl.gov>"
|
||||
description: "Magellan is a discovery tool for BMCs."
|
||||
homepage: "https://www.openchami.org"
|
||||
license: MIT
|
||||
section: utils
|
||||
priority: optional
|
||||
contents:
|
||||
- src: dist/magellan_{{ .Os }}_{{ if eq .Arch "amd64" }}{{ .Arch }}_{{ .Amd64 }}{{ else }}{{ .Arch }}{{ end }}/magellan
|
||||
dst: /usr/local/bin/magellan
|
||||
- src: magellan.1
|
||||
dst: /usr/share/man/man1/
|
||||
|
||||
|
||||
dockers:
|
||||
-
|
||||
image_templates:
|
||||
- ghcr.io/openchami/{{.ProjectName}}:latest
|
||||
- ghcr.io/openchami/{{.ProjectName}}:{{ .Tag }}
|
||||
- ghcr.io/openchami/{{.ProjectName}}:v{{ .Major }}
|
||||
- ghcr.io/openchami/{{.ProjectName}}:v{{ .Major }}.{{ .Minor }}
|
||||
- image_templates:
|
||||
- &amd64_linux_image ghcr.io/openchami/{{.ProjectName}}:{{ .Tag }}-amd64
|
||||
- ghcr.io/openchami/{{.ProjectName}}:{{ .Major }}-amd64
|
||||
- ghcr.io/openchami/{{.ProjectName}}:{{ .Major }}.{{ .Minor }}-amd64
|
||||
use: buildx
|
||||
build_flag_templates:
|
||||
- "--pull"
|
||||
- "--platform=linux/amd64"
|
||||
- "--label=org.opencontainers.image.created={{.Date}}"
|
||||
- "--label=org.opencontainers.image.title={{.ProjectName}}"
|
||||
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
|
||||
- "--label=org.opencontainers.image.version={{.Version}}"
|
||||
goarch: amd64
|
||||
goamd64: v3
|
||||
extra_files:
|
||||
- LICENSE
|
||||
- CHANGELOG.md
|
||||
- README.md
|
||||
- image_templates:
|
||||
- &arm64v8_linux_image ghcr.io/openchami/{{.ProjectName}}:{{ .Tag }}-arm64
|
||||
- ghcr.io/openchami/{{.ProjectName}}:{{ .Major }}-arm64
|
||||
- ghcr.io/openchami/{{.ProjectName}}:{{ .Major }}.{{ .Minor }}-arm64
|
||||
use: buildx
|
||||
build_flag_templates:
|
||||
- "--pull"
|
||||
- "--platform=linux/arm64"
|
||||
- "--label=org.opencontainers.image.created={{.Date}}"
|
||||
- "--label=org.opencontainers.image.title={{.ProjectName}}"
|
||||
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
|
||||
|
|
@ -46,7 +105,32 @@ dockers:
|
|||
- LICENSE
|
||||
- CHANGELOG.md
|
||||
- README.md
|
||||
- bin/magellan.sh
|
||||
goarch: arm64
|
||||
|
||||
docker_manifests:
|
||||
- name_template: "ghcr.io/openchami/{{.ProjectName}}:latest"
|
||||
image_templates:
|
||||
- *amd64_linux_image
|
||||
- *arm64v8_linux_image
|
||||
|
||||
- name_template: "ghcr.io/openchami/{{.ProjectName}}:{{ .Tag }}"
|
||||
image_templates:
|
||||
- *amd64_linux_image
|
||||
- *arm64v8_linux_image
|
||||
|
||||
- name_template: "ghcr.io/openchami/{{.ProjectName}}:{{ .Major }}"
|
||||
image_templates:
|
||||
- *amd64_linux_image
|
||||
- *arm64v8_linux_image
|
||||
|
||||
- name_template: "ghcr.io/openchami/{{.ProjectName}}:{{ .Major }}.{{ .Minor }}"
|
||||
image_templates:
|
||||
- *amd64_linux_image
|
||||
- *arm64v8_linux_image
|
||||
|
||||
|
||||
|
||||
|
||||
checksum:
|
||||
name_template: 'checksums.txt'
|
||||
snapshot:
|
||||
|
|
@ -57,8 +141,3 @@ changelog:
|
|||
exclude:
|
||||
- '^docs:'
|
||||
- '^test:'
|
||||
release:
|
||||
github:
|
||||
name_template: "{{.Version}}"
|
||||
prerelease: auto
|
||||
mode: append
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue