mirror of
https://github.com/tailscale/tailscale.git
synced 2024-11-26 03:25:35 +00:00
d4916a8be3
Currently scheduled runs are not canceled when we update PRs, those results are unused and the resources are just wasted. Instead of doing that, this PR makes it so that when a PR is updated (force-pushed or new commit added) the previous runs are canceled. https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#example-using-a-fallback-value Signed-off-by: Maisem Ali <maisem@tailscale.com>
58 lines
1.6 KiB
YAML
58 lines
1.6 KiB
YAML
name: Windows-Cross
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
pull_request:
|
|
branches:
|
|
- '*'
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-$${{ github.head_ref || github.run_id }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
|
|
if: "!contains(github.event.head_commit.message, '[ci skip]')"
|
|
|
|
steps:
|
|
|
|
- name: Set up Go
|
|
uses: actions/setup-go@v3
|
|
with:
|
|
go-version: 1.19
|
|
id: go
|
|
|
|
- name: Check out code into the Go module directory
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Windows build cmd
|
|
env:
|
|
GOOS: windows
|
|
GOARCH: amd64
|
|
run: go build ./cmd/...
|
|
|
|
- name: Windows build tests
|
|
env:
|
|
GOOS: windows
|
|
GOARCH: amd64
|
|
run: for d in $(go list -f '{{if .TestGoFiles}}{{.Dir}}{{end}}' ./... ); do (echo $d; cd $d && go test -c ); done
|
|
|
|
- uses: k0kubun/action-slack@v2.0.0
|
|
with:
|
|
payload: |
|
|
{
|
|
"attachments": [{
|
|
"text": "${{ job.status }}: ${{ github.workflow }} <https://github.com/${{ github.repository }}/commit/${{ github.sha }}/checks|${{ env.COMMIT_DATE }} #${{ env.COMMIT_NUMBER_OF_DAY }}> " +
|
|
"(<https://github.com/${{ github.repository }}/commit/${{ github.sha }}|" + "${{ github.sha }}".substring(0, 10) + ">) " +
|
|
"of ${{ github.repository }}@" + "${{ github.ref }}".split('/').reverse()[0] + " by ${{ github.event.head_commit.committer.name }}",
|
|
"color": "danger"
|
|
}]
|
|
}
|
|
env:
|
|
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
|
if: failure() && github.event_name == 'push'
|