diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index c480ad2e..79f7c366 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -8,5 +8,55 @@ on: - cron: "0 0 * * *" jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + go: ["1.19","1.20", "1.x"] + steps: + - uses: actions/checkout@v2 + - name: Set up Go ${{ matrix.go }} + uses: actions/setup-go@v2.1.3 + with: + go-version: ${{ matrix.go }} + - name: Build + run: go build -v ./... + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Set up Go + uses: actions/setup-go@v2.1.3 + with: + go-version: '1.18' + - name: Run Coverage + run: go test -v -coverprofile=profile.cov ./... + - name: Send coverage + uses: shogo82148/actions-goveralls@v1 + with: + path-to-profile: profile.cov + + static_analysis: + name: Static Analysis + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Install Go + uses: actions/setup-go@v2 + with: + go-version: '1.18' + id: go + - name: Install required static analysis tools + run: | + go get -u honnef.co/go/tools/cmd/staticcheck + - name: Check out code + uses: actions/setup-go@v2.1.3 + - name: get dependencies + run: | + go get -v -t -d ./... + - name: Go vet + run: go vet ./... + - name: Check gofmt + run: diff -u <(echo -n) <(gofmt -d -s .) go: uses: openconfig/common-ci/.github/workflows/basic_go.yml@c2294c3c86c90e75e58c24a40d6f7f3364bbae9d