| # Generated by internal/ci/ci_tool.cue; do not edit |
| |
| name: Test |
| on: |
| push: |
| branches: |
| - '*' |
| tags-ignore: |
| - v* |
| defaults: |
| run: |
| shell: bash |
| jobs: |
| test: |
| strategy: |
| fail-fast: false |
| matrix: |
| go-version: |
| - 1.12.x |
| - 1.13.x |
| - 1.14.3 |
| os: |
| - ubuntu-latest |
| - macos-latest |
| - windows-latest |
| runs-on: ${{ matrix.os }} |
| steps: |
| - 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- |
| - if: matrix.go-version == '1.14.3' && matrix.os != 'windows-latest' |
| name: Generate |
| run: go generate ./... |
| - name: Test |
| run: go test ./... |
| - name: Test with -race |
| run: go test -race ./... |
| - if: matrix.go-version == '1.14.3' || matrix.go-version == '1.13.x' |
| name: gorelease check |
| 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) |
| - if: github.ref == 'refs/heads/master' |
| name: Pull this commit through the proxy on 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 |