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