tpb/.crow/build.yml
Grace Yoder aa93c77544
Some checks failed
ci/crow/push/build Pipeline failed
feat: crow ci
2026-06-24 18:56:30 -06:00

73 lines
2.5 KiB
YAML

when:
- event: push
branch: ${CI_REPO_DEFAULT_BRANCH}
clone:
git:
image: codefloe.com/crow-plugins/clone:1.1.0
settings:
tags: true
steps:
- name: build-linux-x86_64
image: alpine:3.20
commands:
- apk add --no-cache curl xz
- curl -sSL https://ziglang.org/download/0.16.0/zig-x86_64-linux-0.16.0.tar.xz | tar -xJ -C /usr/local
- ln -s /usr/local/zig-x86_64-linux-0.16.0/zig /usr/local/bin/zig
- zig build -Dtarget=x86_64-linux-musl -Doptimize=ReleaseSafe
- cp zig-out/bin/tpb tpb-linux-x86_64
- name: build-linux-aarch64
image: alpine:3.20
commands:
- apk add --no-cache curl xz
- curl -sSL https://ziglang.org/download/0.16.0/zig-x86_64-linux-0.16.0.tar.xz | tar -xJ -C /usr/local
- ln -s /usr/local/zig-x86_64-linux-0.16.0/zig /usr/local/bin/zig
- zig build -Dtarget=aarch64-linux-musl -Doptimize=ReleaseSafe
- cp zig-out/bin/tpb tpb-linux-aarch64
- name: build-macos-x86_64
image: alpine:3.20
commands:
- apk add --no-cache curl xz
- curl -sSL https://ziglang.org/download/0.16.0/zig-x86_64-linux-0.16.0.tar.xz | tar -xJ -C /usr/local
- ln -s /usr/local/zig-x86_64-linux-0.16.0/zig /usr/local/bin/zig
- zig build -Dtarget=x86_64-macos -Doptimize=ReleaseSafe
- cp zig-out/bin/tpb tpb-macos-x86_64
- name: build-macos-aarch64
image: alpine:3.20
commands:
- apk add --no-cache curl xz
- curl -sSL https://ziglang.org/download/0.16.0/zig-x86_64-linux-0.16.0.tar.xz | tar -xJ -C /usr/local
- ln -s /usr/local/zig-x86_64-linux-0.16.0/zig /usr/local/bin/zig
- zig build -Dtarget=aarch64-macos -Doptimize=ReleaseSafe
- cp zig-out/bin/tpb tpb-macos-aarch64
- name: retag-latest
image: alpine:3.20
depends_on: [build-linux-x86_64, build-linux-aarch64, build-macos-x86_64, build-macos-aarch64]
environment:
FORGEJO_TOKEN:
from_secret: forgejo_token
commands:
- echo "token length=${#FORGEJO_TOKEN}"
- apk add --no-cache git
- git remote set-url origin "https://oauth2:${FORGEJO_TOKEN}@${CI_FORGE_URL#https://}/${CI_REPO}.git"
- git tag -f latest
- git push -f origin latest
- name: release
image: woodpeckerci/plugin-release
depends_on: retag-latest
settings:
api_key:
from_secret: forgejo_token
files:
- tpb-linux-x86_64
- tpb-linux-aarch64
- tpb-macos-x86_64
- tpb-macos-aarch64
checksum: sha256
file_exists: overwrite