From f59bc4a5d13c519def1cb07a3181b84cf1227088 Mon Sep 17 00:00:00 2001 From: tim-ywliu <68043973+tim-ywliu@users.noreply.github.com> Date: Thu, 6 Jan 2022 13:23:25 +0800 Subject: [PATCH] Add GitHub Action (#3) Add GitHub action for golangci-lint to check coding style. Accorading to https://github.com/marketplace/actions/run-golangci-lint. Add GitHub action for go build and go test CI --- .github/workflows/go.yml | 25 +++++++++++++++++++++ .github/workflows/golangci-lint.yml | 34 +++++++++++++++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 .github/workflows/go.yml create mode 100644 .github/workflows/golangci-lint.yml diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml new file mode 100644 index 0000000..babf3d3 --- /dev/null +++ b/.github/workflows/go.yml @@ -0,0 +1,25 @@ +name: Go + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + + - name: Set up Go + uses: actions/setup-go@v2 + with: + go-version: '1.14.4' + + - name: Build + run: go build -v ./... + + - name: Test + run: go test -v ./... diff --git a/.github/workflows/golangci-lint.yml b/.github/workflows/golangci-lint.yml new file mode 100644 index 0000000..72f27e4 --- /dev/null +++ b/.github/workflows/golangci-lint.yml @@ -0,0 +1,34 @@ +name: golangci-lint + +on: + push: + tags: + - v* + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + + golangci: + name: lint + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Run golangci-lint + uses: golangci/golangci-lint-action@v2 + with: + # Required: the version of golangci-lint is required and must be specified without patch version: we always use the latest patch version. + version: v1.35.0 + + # Optional: working directory, useful for monorepos + # working-directory: somedir + + # Optional: golangci-lint command line arguments. + # args: --issues-exit-code=0 + + # Optional: show only new issues if it's a pull request. The default value is `false`. + # only-new-issues: true + + # Optional: if set to true then the action will use pre-installed Go + # skip-go-installation: true