name: CI on: push: branches: - master - release* pull_request: branches: - master - release* env: # Common versions GO_VERSION: '1.16' GOLANGCI_VERSION: 'v1.42' jobs: golangci-lint: runs-on: ubuntu-18.04 steps: - name: Checkout uses: actions/checkout@v2 with: submodules: true - name: Setup Go uses: actions/setup-go@v2 with: go-version: ${{ env.GO_VERSION }} - name: Cache Go Dependencies uses: actions/cache@v2 with: path: ~/go/pkg/mod key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} restore-keys: ${{ runner.os }}-go- - name: Lint golang code uses: golangci/golangci-lint-action@v3 with: version: ${{ env.GOLANGCI_VERSION }} args: --verbose build-and-test: name: ci-build runs-on: ubuntu-18.04 steps: - name: Checkout uses: actions/checkout@v2 with: submodules: true - name: Setup Go uses: actions/setup-go@v2 with: go-version: ${{ env.GO_VERSION }} - name: Build run: | make build - name: Test run: | make test