| # Generated by internal/ci/ci_tool.cue; do not edit |
| |
| name: Test |
| env: |
| GERRIT_COOKIE: ${{ secrets.gerritCookie }} |
| defaults: |
| run: |
| shell: bash |
| on: |
| push: |
| branches: |
| - '*' |
| tags-ignore: |
| - v* |
| jobs: |
| test: |
| needs: start |
| runs-on: ${{ matrix.os }} |
| steps: |
| - name: Set build branch env vars |
| run: |- |
| echo "::set-env name=CUE_IS_BUILD_BRANCH::$(echo $GITHUB_REF | grep -q '^refs\/heads\/[[:digit:]]\{14\}-I[0-9a-f]\+-[0-9a-f]\+-refs_changes_[[:digit:]]\{2\}_[[:digit:]]\+_[[:digit:]]\+$' && echo true || echo false)" |
| echo "::set-env name=CUE_CHANGE_ID::$(echo $GITHUB_REF | cut -d '-' -f 2)" |
| echo "::set-env name=CUE_COMMIT::$(echo $GITHUB_REF | cut -d '-' -f 3)" |
| echo "::set-env name=CUE_REF::$(echo $GITHUB_REF | cut -d '-' -f 4 | sed 's/_/\//g')" |
| - name: Write the gitcookies file |
| run: echo "$GERRIT_COOKIE" > ~/.gitcookies |
| - name: Install Go |
| uses: actions/setup-go@v2 |
| with: |
| go-version: ${{ matrix.go-version }} |
| - name: Checkout code |
| uses: actions/checkout@v2 |
| - name: Cache Go modules |
| uses: actions/cache@v1 |
| with: |
| path: ~/go/pkg/mod |
| key: ${{ runner.os }}-${{ matrix.go-version }}-go-${{ hashFiles('**/go.sum') |
| }} |
| restore-keys: ${{ runner.os }}-${{ matrix.go-version }}-go- |
| - name: Generate |
| if: matrix.go-version == '1.14.3' && matrix.os != 'windows-latest' |
| run: go generate ./... |
| - name: Test |
| run: go test ./... |
| - name: Test with -race |
| run: go test -race ./... |
| - name: gorelease check |
| if: matrix.go-version == '1.14.3' || matrix.go-version == '1.13.x' |
| run: go run golang.org/x/exp/cmd/gorelease |
| - name: Check that git is clean post generate and tests |
| run: test -z "$(git status --porcelain)" || (git status; git diff; false) |
| - name: Pull this commit through the proxy on master |
| if: github.ref == 'refs/heads/master' |
| run: |- |
| v=$(git rev-parse HEAD) |
| cd $(mktemp -d) |
| go mod init mod.com |
| GOPROXY=https://proxy.golang.org go get -d cuelang.org/go@$v |
| - name: Post any failures for this matrix entry |
| if: ${{ env.CUE_IS_BUILD_BRANCH == 'true' && failure() }} |
| run: 'curl -f -s -H "Content-Type: application/json" --request POST --data ''{"message":"Build |
| failed for ${{ runner.os }}-${{ matrix.go-version }}; see ${{ github.event.repository.html_url |
| }}/actions/runs/${{ github.run_id }} for more details","labels":{"Code-Review":-1}}'' |
| -b ~/.gitcookies https://cue-review.googlesource.com/a/changes/$CUE_CHANGE_ID/revisions/$CUE_COMMIT/review' |
| strategy: |
| matrix: |
| go-version: |
| - 1.12.x |
| - 1.13.x |
| - 1.14.3 |
| os: |
| - ubuntu-latest |
| - macos-latest |
| - windows-latest |
| fail-fast: false |
| start: |
| runs-on: ubuntu-latest |
| steps: |
| - name: Set build branch env vars |
| run: |- |
| echo "::set-env name=CUE_IS_BUILD_BRANCH::$(echo $GITHUB_REF | grep -q '^refs\/heads\/[[:digit:]]\{14\}-I[0-9a-f]\+-[0-9a-f]\+-refs_changes_[[:digit:]]\{2\}_[[:digit:]]\+_[[:digit:]]\+$' && echo true || echo false)" |
| echo "::set-env name=CUE_CHANGE_ID::$(echo $GITHUB_REF | cut -d '-' -f 2)" |
| echo "::set-env name=CUE_COMMIT::$(echo $GITHUB_REF | cut -d '-' -f 3)" |
| echo "::set-env name=CUE_REF::$(echo $GITHUB_REF | cut -d '-' -f 4 | sed 's/_/\//g')" |
| - name: Write the gitcookies file |
| run: echo "$GERRIT_COOKIE" > ~/.gitcookies |
| - name: Update Gerrit CL message with starting message |
| if: ${{ env.CUE_IS_BUILD_BRANCH == 'true' }} |
| run: 'curl -f -s -H "Content-Type: application/json" --request POST --data ''{"message":"Started |
| the build... see progress at ${{ github.event.repository.html_url }}/actions/runs/${{ |
| github.run_id }}"}'' -b ~/.gitcookies https://cue-review.googlesource.com/a/changes/$CUE_CHANGE_ID/revisions/$CUE_COMMIT/review' |
| end: |
| needs: test |
| runs-on: ubuntu-latest |
| steps: |
| - name: Set build branch env vars |
| run: |- |
| echo "::set-env name=CUE_IS_BUILD_BRANCH::$(echo $GITHUB_REF | grep -q '^refs\/heads\/[[:digit:]]\{14\}-I[0-9a-f]\+-[0-9a-f]\+-refs_changes_[[:digit:]]\{2\}_[[:digit:]]\+_[[:digit:]]\+$' && echo true || echo false)" |
| echo "::set-env name=CUE_CHANGE_ID::$(echo $GITHUB_REF | cut -d '-' -f 2)" |
| echo "::set-env name=CUE_COMMIT::$(echo $GITHUB_REF | cut -d '-' -f 3)" |
| echo "::set-env name=CUE_REF::$(echo $GITHUB_REF | cut -d '-' -f 4 | sed 's/_/\//g')" |
| - name: Write the gitcookies file |
| run: echo "$GERRIT_COOKIE" > ~/.gitcookies |
| - name: Update Gerrit CL message with success message |
| if: ${{ env.CUE_IS_BUILD_BRANCH == 'true' }} |
| run: 'curl -f -s -H "Content-Type: application/json" --request POST --data ''{"message":"Build |
| succeeded for ${{ github.event.repository.html_url }}/actions/runs/${{ github.run_id |
| }}","labels":{"Code-Review":1}}'' -b ~/.gitcookies https://cue-review.googlesource.com/a/changes/$CUE_CHANGE_ID/revisions/$CUE_COMMIT/review' |