31 lines
873 B
YAML
31 lines
873 B
YAML
name: CI
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
workflow_dispatch:
|
|
|
|
concurrency:
|
|
group: tarakan-client-ci-${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
quality:
|
|
name: Test, vet, build
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: https://data.forgejo.org/actions/checkout@v4
|
|
|
|
- name: Go check
|
|
run: |
|
|
set -euo pipefail
|
|
case "$GITHUB_WORKSPACE" in
|
|
/data/*) HOST_WS="/opt/forgejo-runner/data${GITHUB_WORKSPACE#/data}" ;;
|
|
*) HOST_WS="$GITHUB_WORKSPACE" ;;
|
|
esac
|
|
test -f "$GITHUB_WORKSPACE/go.mod"
|
|
docker run --rm --network host \
|
|
-v "${HOST_WS}:/src" -w /src -e CGO_ENABLED=0 \
|
|
golang:1.25-bookworm \
|
|
sh -c "go version && go test -count=1 ./... && go vet ./... && make build && ls -la bin/tarakan"
|