diff --git a/.github/mergify.yml b/.github/mergify.yml index ac990ee..8126dea 100644 --- a/.github/mergify.yml +++ b/.github/mergify.yml @@ -9,8 +9,10 @@ pull_request_rules: conditions: - "#approved-reviews-by>=1" - "-draft" - - "status-success=Build" - - "status-success=Integration test" + - "status-success=build" + - "status-success=lint" + - "status-success=security" + - "status-success=integration-test" actions: merge: method: squash diff --git a/.github/workflows/go.yaml b/.github/workflows/go.yaml index 9801df8..9670070 100644 --- a/.github/workflows/go.yaml +++ b/.github/workflows/go.yaml @@ -1,4 +1,4 @@ -name: Go +name: "Continuous Integration" on: push: @@ -7,9 +7,9 @@ on: branches: [ master ] jobs: - build: - name: Build - runs-on: ubuntu-latest + unit-tests: + name: Unit tests + runs-on: ubuntu-20.04 steps: - name: Set up Go 1.14 @@ -24,6 +24,13 @@ jobs: - name: Test run: go test -v ./... + lint: + name: Code standards (linting) + runs-on: ubuntu-20.04 + steps: + - name: Check out code into the Go module directory + uses: actions/checkout@v2 + - name: Lint uses: golangci/golangci-lint-action@v2 with: @@ -31,3 +38,20 @@ jobs: args: --enable=gosec,maligned,misspell only-new-issues: true + security: + name: Security + runs-on: ubuntu-20.04 + steps: + - name: Check out code into the Go module directory + uses: actions/checkout@v2 + + - name: Initialize CodeQL + uses: github/codeql-action/init@v1 + with: + languages: go + + - name: Autobuild + uses: github/codeql-action/autobuild@v1 + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v1