add goreleaser

This commit is contained in:
crgimenes
2023-02-05 16:47:08 -03:00
parent 3329927504
commit 10c6c1339f
3 changed files with 82 additions and 0 deletions

52
.github/workflows/release.yml vendored Normal file
View File

@@ -0,0 +1,52 @@
name: Release Neko
on:
push:
tags:
- "v*"
permissions:
contents: write
jobs:
goreleaser:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Install packages
run: |
sudo apt update
sudo apt install -y build-essential libalut-dev libasound2-dev libc6-dev libgl1-mesa-dev libglu1-mesa-dev libxcursor-dev libxi-dev libxinerama-dev libxrandr-dev libxxf86vm-dev mesa-utils pkg-config xorg-dev xvfb
- run: git fetch --force --tags
- uses: actions/setup-go@v3
with:
go-version: ">=1.19.5"
cache: true
- uses: goreleaser/goreleaser-action@v2
with:
distribution: goreleaser
version: latest
args: release --rm-dist
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
goreleaser-mac:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- run: git fetch --force --tags
- uses: actions/setup-go@v3
with:
go-version: ">=1.19.5"
cache: true
- uses: goreleaser/goreleaser-action@v2
with:
distribution: goreleaser
version: latest
args: release --rm-dist --config=.goreleaser_macos.yml
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

14
.goreleaser.yml Normal file
View File

@@ -0,0 +1,14 @@
builds:
- goos:
- linux
- windows
goarch:
- amd64
archives:
- format: binary
name_template: "{{ .ProjectName }}_{{ .Os }}"
checksum:
# goreleaser-pro is required to merge checksums. Multiple runs are
# required because Ebitengine only supports crossbuild for Windows
# machines
disable: true

16
.goreleaser_macos.yml Normal file
View File

@@ -0,0 +1,16 @@
builds:
- goos:
- darwin
goarch:
- amd64
- arm64
archives:
- format: binary
name_template: "{{ .ProjectName }}_{{ .Os }}_{{ .Arch }}"
replacements:
darwin: macOS
checksum:
# goreleaser-pro is required to merge checksums. Multiple runs are
# required because Ebitengine only supports crossbuild for Windows
# machines
disable: true