Files
tailscale/.github/workflows/tailcat.yml
T
Brad Fitzpatrick 47743a8b9a .github/workflows: only run tailcat check on PRs to main
Release branches don't need the heads-up about tailcat breakage.

Updates #cleanup

Change-Id: I132880827880f6b80cf4df34ac7e16dbe0b41eb4
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
2026-10-20 09:24:49 -07:00

68 lines
2.1 KiB
YAML

name: tailcat
# This workflow tests the tailscale/tailcat repo against the tailscale.com
# module at head, rather than the version tailcat pins in its go.mod. It
# exists as an early warning that a change here breaks tailcat's API or
# behavior expectations. A failure might be fine if it's an intentional,
# coordinated change, but it's here to prevent accidental breakage.
on:
push:
branches:
- main
pull_request:
branches:
- main
paths:
- "**/*.go"
- "go.mod"
- "go.sum"
- ".github/workflows/tailcat.yml"
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
tailcat:
name: heads-up-hypothetical-tailcat-build-using-this-commit
runs-on: ubuntu-latest
steps:
- name: Check out tailscale
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: tailscale
- name: Check out tailcat
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
repository: tailscale/tailcat
path: tailcat
- name: Set up Go workspace
working-directory: tailcat
run: |
../tailscale/tool/go work init . ../tailscale
../tailscale/tool/go work sync
- name: Run tailcat tests
working-directory: tailcat
run: ../tailscale/tool/go test ./...
- name: Explain failure
if: failure()
run: |
cat <<'EOF' | tee -a "$GITHUB_STEP_SUMMARY"
Don't panic!
This job builds the tailscale/tailcat repo against the tailscale.com
module at this commit, not the version tailcat actually pins in its
go.mod. A failure here does NOT break tailcat today; nothing breaks
until tailcat bumps its tailscale.com dependency to include this
change.
This is only an early heads-up. Be concerned only if this API or
behavior breakage is unexpected. If the breakage is intentional,
proceed and coordinate a matching tailcat update.
EOF