From 5799c289b41ff70d1071e817e43ff6ce8f64e762 Mon Sep 17 00:00:00 2001 From: Markus Sommer Date: Fri, 5 Apr 2024 20:47:43 +0200 Subject: [PATCH] Update CI config --- .github/.golangci.yml | 17 --------- .github/workflows/ci.yml | 24 +++---------- .github/workflows/golangci-lint.yml | 55 +++++++++++++++++++++++++++++ .golangci.yml | 9 +++++ 4 files changed, 68 insertions(+), 37 deletions(-) delete mode 100644 .github/.golangci.yml create mode 100644 .github/workflows/golangci-lint.yml create mode 100644 .golangci.yml diff --git a/.github/.golangci.yml b/.github/.golangci.yml deleted file mode 100644 index b90a330..0000000 --- a/.github/.golangci.yml +++ /dev/null @@ -1,17 +0,0 @@ -issues: - exclude-rules: - # Some deterministic "pseudo random" data is needed in tests - - path: _test\.go - text: "G404:" - linters: - - gosec - -linters: - # In addition to the default - enable: - - gocyclo - - gofmt - - goimports - - gosec - - prealloc - - unconvert diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 948bc8d..5b7ae09 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,35 +10,19 @@ jobs: strategy: matrix: - go: [ '1.13', '1.15' ] + go: [ '1.22' ] steps: - name: Set up Go ${{ matrix.go }} - uses: actions/setup-go@v2 + uses: actions/setup-go@v5 with: go-version: ${{ matrix.go }} - name: Check out code - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Build on Go ${{ matrix.go }} run: go build ./... - name: Test - run: go test -v ./... - - - golangci: - name: Check golangci-lint - - runs-on: ubuntu-latest - - steps: - - name: Check out code - uses: actions/checkout@v2 - - - name: golangci-lint - uses: golangci/golangci-lint-action@v2 - with: - version: v1.32 - args: --config .github/.golangci.yml + run: go test -v -rapid.checks=10_000 ./... diff --git a/.github/workflows/golangci-lint.yml b/.github/workflows/golangci-lint.yml new file mode 100644 index 0000000..15e1946 --- /dev/null +++ b/.github/workflows/golangci-lint.yml @@ -0,0 +1,55 @@ +name: golangci-lint +on: + push: + branches: + - master + - main + pull_request: + +permissions: + contents: read + # Optional: allow read access to pull request. Use with `only-new-issues` option. + # pull-requests: read + +jobs: + golangci: + name: lint + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version: '1.22' + cache: false + - name: golangci-lint + uses: golangci/golangci-lint-action@v4 + with: + # Require: The version of golangci-lint to use. + # When `install-mode` is `binary` (default) the value can be v1.2 or v1.2.3 or `latest` to use the latest version. + # When `install-mode` is `goinstall` the value can be v1.2.3, `latest`, or the hash of a commit. + version: v1.54 + + # Optional: working directory, useful for monorepos + # working-directory: somedir + + # Optional: golangci-lint command line arguments. + # + # Note: By default, the `.golangci.yml` file should be at the root of the repository. + # The location of the configuration file can be changed by using `--config=` + # args: --timeout=30m --config=/my/path/.golangci.yml --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 all caching functionality will be completely disabled, + # takes precedence over all other caching options. + # skip-cache: true + + # Optional: if set to true, then the action won't cache or restore ~/go/pkg. + # skip-pkg-cache: true + + # Optional: if set to true, then the action won't cache or restore ~/.cache/go-build. + # skip-build-cache: true + + # Optional: The mode to install golangci-lint. It can be 'binary' or 'goinstall'. + # install-mode: "goinstall" \ No newline at end of file diff --git a/.golangci.yml b/.golangci.yml new file mode 100644 index 0000000..ca7b53b --- /dev/null +++ b/.golangci.yml @@ -0,0 +1,9 @@ +linters: + # In addition to the default + enable: + - gocyclo + - gofmt + - goimports + - gosec + - prealloc + - unconvert