
This commit is to update go-mod github action step to check for only go.mod file. Ideally, both go.mod and go.sum should be checked, however, the current behavior of `go mod tidy` command will not clean up old entries in go.sum. Additionally, dependentbot is currently failing as there is dirty change in go.sum file.
98 lines
2.7 KiB
YAML
98 lines
2.7 KiB
YAML
---
|
|
name: CI
|
|
on:
|
|
push:
|
|
tags:
|
|
- v*
|
|
branches:
|
|
- master
|
|
pull_request:
|
|
jobs:
|
|
# Check if there any dirty change for go mod tidy
|
|
go-mod:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Install Go
|
|
uses: actions/setup-go@v2
|
|
with:
|
|
go-version: 1.15
|
|
- name: Checkout code
|
|
uses: actions/checkout@v2
|
|
- name: Check go mod
|
|
run: |
|
|
go mod tidy
|
|
git diff --exit-code go.mod
|
|
|
|
# We already run the current golangci-lint in tests, but here we test
|
|
# our GitHub action with the latest stable golangci-lint.
|
|
golangci-lint:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: lint
|
|
uses: golangci/golangci-lint-action@v2
|
|
with:
|
|
version: latest
|
|
tests-on-windows:
|
|
needs: golangci-lint # run after golangci-lint action to not produce duplicated errors
|
|
runs-on: windows-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Install Go
|
|
uses: actions/setup-go@v2
|
|
with:
|
|
go-version: 1.15 # test only the latest go version to speed up CI
|
|
- name: Run tests
|
|
run: make.exe test
|
|
continue-on-error: true
|
|
tests-on-macos:
|
|
needs: golangci-lint # run after golangci-lint action to not produce duplicated errors
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Install Go
|
|
uses: actions/setup-go@v2
|
|
with:
|
|
go-version: 1.15 # test only the latest go version to speed up CI
|
|
- name: Run tests
|
|
run: make test
|
|
tests-on-unix:
|
|
needs: golangci-lint # run after golangci-lint action to not produce duplicated errors
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
golang:
|
|
- 1.13
|
|
- 1.14
|
|
- 1.15
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Install Go
|
|
uses: actions/setup-go@v2
|
|
with:
|
|
go-version: ${{ matrix.golang }}
|
|
- uses: actions/cache@v2
|
|
with:
|
|
path: ~/go/pkg/mod
|
|
key: ${{ runner.os }}-go-${{ matrix.golang }}-${{ hashFiles('**/go.sum') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-go-${{ matrix.golang }}-
|
|
- name: Run tests
|
|
run: make test
|
|
check_generated:
|
|
needs: golangci-lint # run after golangci-lint action to not produce duplicated errors
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
# needed for github-action-config.json generation
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Unshallow
|
|
run: git fetch --prune --unshallow
|
|
- name: Install Go
|
|
uses: actions/setup-go@v2
|
|
with:
|
|
go-version: 1.15
|
|
- name: Check generated files are up to date
|
|
run: make fast_check_generated
|