Skip to content

Commit

Permalink
Merge pull request #30 from gnolang/chore/update-goreleaser
Browse files Browse the repository at this point in the history
  • Loading branch information
ajnavarro authored Apr 12, 2024
2 parents f11f08e + fa0d50a commit 58d6a69
Show file tree
Hide file tree
Showing 3 changed files with 86 additions and 17 deletions.
89 changes: 78 additions & 11 deletions .github/goreleaser.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,28 @@ before:
builds:
- main: ./cmd
binary: faucet
env:
- CGO_ENABLED=0
goos:
- linux
- darwin
goarch:
- amd64
- arm64
- arm
goarm:
- 6
- 7

gomod:
proxy: true

archives:
- name_template: "{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
# https://goreleaser.com/customization/archive/
- files:
# Standard Release Files
- LICENSE.md
- README.md

signs:
- cmd: cosign
Expand All @@ -35,18 +45,76 @@ signs:
output: true

dockers:
- image_templates:
- "ghcr.io/gnolang/faucet:latest"
- "ghcr.io/gnolang/faucet:{{ .Tag }}"
# https://goreleaser.com/customization/docker/
- use: buildx
dockerfile: Dockerfile.release
goos: linux
goarch: amd64
image_templates:
- "ghcr.io/gnolang/{{ .ProjectName }}:{{ .Version }}-amd64"
- "ghcr.io/gnolang/{{ .ProjectName }}:latest-amd64"
build_flag_templates:
- "--pull"
- "--platform=linux/amd64"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.name={{.ProjectName}}"
- "--label=org.opencontainers.image.title={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
- "--label=org.opencontainers.image.source={{.GitURL}}"

- use: buildx
dockerfile: Dockerfile.release
goos: linux
goarch: arm64
image_templates:
- "ghcr.io/gnolang/{{ .ProjectName }}:{{ .Version }}-arm64v8"
- "ghcr.io/gnolang/{{ .ProjectName }}:latest-arm64v8"
build_flag_templates:
- "--platform=linux/arm64/v8"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.title={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
- use: buildx
dockerfile: Dockerfile.release
goos: linux
goarch: arm
goarm: 6
image_templates:
- "ghcr.io/gnolang/{{ .ProjectName }}:{{ .Version }}-armv6"
- "ghcr.io/gnolang/{{ .ProjectName }}:latest-armv6"
build_flag_templates:
- "--platform=linux/arm/v6"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.title={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
- use: buildx
dockerfile: Dockerfile.release
goos: linux
goarch: arm
goarm: 7
image_templates:
- "ghcr.io/gnolang/{{ .ProjectName }}:{{ .Version }}-armv7"
- "ghcr.io/gnolang/{{ .ProjectName }}:latest-armv7"
build_flag_templates:
- "--platform=linux/arm/v7"
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.title={{.ProjectName}}"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
docker_manifests:
# https://goreleaser.com/customization/docker_manifest/
- name_template: ghcr.io/gnolang/{{ .ProjectName }}:{{ .Version }}
image_templates:
- ghcr.io/gnolang/{{ .ProjectName }}:{{ .Version }}-amd64
- ghcr.io/gnolang/{{ .ProjectName }}:{{ .Version }}-arm64v8
- ghcr.io/gnolang/{{ .ProjectName }}:{{ .Version }}-armv6
- ghcr.io/gnolang/{{ .ProjectName }}:{{ .Version }}-armv7
- name_template: ghcr.io/gnolang/{{ .ProjectName }}:latest
image_templates:
- ghcr.io/gnolang/{{ .ProjectName }}:latest-amd64
- ghcr.io/gnolang/{{ .ProjectName }}:latest-arm64v8
- ghcr.io/gnolang/{{ .ProjectName }}:latest-armv6
- ghcr.io/gnolang/{{ .ProjectName }}:latest-armv7

docker_signs:
- cmd: cosign
env:
Expand Down Expand Up @@ -79,10 +147,9 @@ release:
footer: |
### Container Images
https://ghcr.io/gnolang/faucet:{{ .Tag }}
https://ghcr.io/gnolang/{{ .ProjectName }}:{{ .Tag }}
For example:
```
docker pull ghcr.io/gnolang/faucet:{{ .Tag }}
docker pull ghcr.io/gnolang/{{ .ProjectName }}:{{ .Tag }}
```
5 changes: 4 additions & 1 deletion .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,12 @@ jobs:
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Set up QEMU
uses: docker/setup-qemu-action@v3

- uses: goreleaser/goreleaser-action@v5
with:
version: latest
args: release --clean --config ./.github/goreleaser.yaml
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
9 changes: 4 additions & 5 deletions Dockerfile.release
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
FROM alpine

COPY faucet /usr/local/bin/gnofaucet

ENTRYPOINT [ "/usr/local/bin/faucet" ]
FROM scratch
COPY faucet /
ENTRYPOINT [ "/faucet" ]
CMD [ "serve" ]

0 comments on commit 58d6a69

Please sign in to comment.