Move to goreleaser

This commit is contained in:
GRMrGecko 2024-03-04 01:06:16 -06:00
parent c900d83aeb
commit 4f07ac10d4
5 changed files with 55 additions and 10 deletions

View File

@ -7,15 +7,23 @@ permissions:
packages: write packages: write
jobs: jobs:
release-linux-amd64: goreleaser:
name: release linux/amd64
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v3 -
- uses: wangyoucao577/go-release-action@v1 name: Checkout
with: uses: actions/checkout@v4
github_token: ${{ secrets.GITHUB_TOKEN }} with:
goos: linux fetch-depth: 0
goarch: amd64 -
goversion: '1.21.0' name: Set up Go
extra_files: License.txt readme.md uses: actions/setup-go@v4
-
name: Run GoReleaser
uses: goreleaser/goreleaser-action@v5
with:
distribution: goreleaser
version: latest
args: release --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

2
.gitignore vendored
View File

@ -1,2 +1,4 @@
config.yaml config.yaml
freeipa-health-metrics freeipa-health-metrics
dist/

35
.goreleaser.yaml Normal file
View File

@ -0,0 +1,35 @@
# This is an example .goreleaser.yml file with some sensible defaults.
# Make sure to check the documentation at https://goreleaser.com
# The lines below are called `modelines`. See `:help modeline`
# Feel free to remove those if you don't want/need to use them.
# yaml-language-server: $schema=https://goreleaser.com/static/schema.json
# vim: set ts=2 sw=2 tw=0 fo=cnqoj
version: 1
before:
hooks:
# You may remove this if you don't use go modules.
- go mod tidy
# you may remove this if you don't need go generate
- go generate ./...
builds:
- env:
- CGO_ENABLED=0
goos:
- linux
- darwin
archives:
- format: tar.gz
# this name template makes the OS and Arch compatible with the results of `uname`.
wrap_in_directory: true
strip_parent_binary_folder: false
name_template: >-
{{ .ProjectName }}_
{{- title .Os }}_
{{- if eq .Arch "amd64" }}amd64
{{- else }}{{ .Arch }}{{ end }}
{{- if .Arm }}v{{ .Arm }}{{ end }}