This means that yeet's version will be managed by `go.mod` and auto-bumped with dependabot. This removes human error from the equation and ensures that Anubis is always built with the newest version of yeet. This also makes it trivial to make your own local packages for testing: ```text go tool yeet ``` Signed-off-by: Xe Iaso <me@xeiaso.net>
79 lines
2 KiB
YAML
79 lines
2 KiB
YAML
name: Package builds (stable)
|
|
|
|
on:
|
|
release:
|
|
types: [published]
|
|
|
|
permissions:
|
|
contents: write
|
|
actions: write
|
|
|
|
jobs:
|
|
package_builds:
|
|
#runs-on: alrest-techarohq
|
|
runs-on: ubuntu-24.04
|
|
steps:
|
|
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
with:
|
|
persist-credentials: false
|
|
fetch-tags: true
|
|
fetch-depth: 0
|
|
|
|
- name: build essential
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y build-essential
|
|
|
|
- name: Set up Homebrew
|
|
uses: Homebrew/actions/setup-homebrew@master
|
|
|
|
- name: Setup Homebrew cellar cache
|
|
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
|
|
with:
|
|
path: |
|
|
/home/linuxbrew/.linuxbrew/Cellar
|
|
/home/linuxbrew/.linuxbrew/bin
|
|
/home/linuxbrew/.linuxbrew/etc
|
|
/home/linuxbrew/.linuxbrew/include
|
|
/home/linuxbrew/.linuxbrew/lib
|
|
/home/linuxbrew/.linuxbrew/opt
|
|
/home/linuxbrew/.linuxbrew/sbin
|
|
/home/linuxbrew/.linuxbrew/share
|
|
/home/linuxbrew/.linuxbrew/var
|
|
key: ${{ runner.os }}-go-homebrew-cellar-${{ hashFiles('go.sum') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-go-homebrew-cellar-
|
|
|
|
- name: Install Brew dependencies
|
|
run: |
|
|
brew bundle
|
|
|
|
- name: Setup Golang caches
|
|
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
|
|
with:
|
|
path: |
|
|
~/.cache/go-build
|
|
~/go/pkg/mod
|
|
key: ${{ runner.os }}-golang-${{ hashFiles('**/go.sum') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-golang-
|
|
|
|
- name: install node deps
|
|
run: |
|
|
npm ci
|
|
|
|
- name: Build Packages
|
|
run: |
|
|
go tool yeet
|
|
|
|
- name: Upload released artifacts
|
|
env:
|
|
GITHUB_TOKEN: ${{ github.TOKEN }}
|
|
RELEASE_VERSION: ${{github.event.release.tag_name}}
|
|
shell: bash
|
|
run: |
|
|
RELEASE="${RELEASE_VERSION}"
|
|
cd var
|
|
for file in *; do
|
|
gh release upload $RELEASE $file
|
|
done
|