mirror of
https://github.com/kubesphere/kubekey.git
synced 2025-12-26 01:22:51 +00:00
update go version to 1.23
Signed-off-by: pixiake <guofeng@yunify.com>
This commit is contained in:
parent
9cf08b6aef
commit
91979ab818
|
|
@ -19,10 +19,10 @@ jobs:
|
|||
GO111MODULE: on
|
||||
steps:
|
||||
|
||||
- name: Set up Go 1.19
|
||||
- name: Set up Go 1.23
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: 1.19
|
||||
go-version: 1.23
|
||||
id: go
|
||||
|
||||
- name: Check out code into the Go module directory
|
||||
|
|
|
|||
|
|
@ -20,9 +20,15 @@ jobs:
|
|||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: 1.19
|
||||
go-version: 1.23
|
||||
|
||||
- name: Set GOROOT
|
||||
run: echo "GOROOT=$(go env GOROOT)" >> $GITHUB_ENV
|
||||
|
||||
- name: golangci-lint
|
||||
uses: golangci/golangci-lint-action@v6.0.1
|
||||
uses: golangci/golangci-lint-action@v6.5.2
|
||||
with:
|
||||
version: v1.50.1
|
||||
version: v1.59.1
|
||||
working-directory: ${{matrix.working-directory}}
|
||||
env:
|
||||
GOROOT: ${{ env.GOROOT }}
|
||||
|
|
@ -19,7 +19,7 @@ jobs:
|
|||
- name: Install go
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: '^1.19'
|
||||
go-version: '^1.23'
|
||||
- name: generate release artifacts
|
||||
run: |
|
||||
make release
|
||||
|
|
|
|||
101
.golangci.yml
101
.golangci.yml
|
|
@ -4,11 +4,10 @@ linters:
|
|||
- asciicheck
|
||||
- bodyclose
|
||||
- containedctx
|
||||
- deadcode
|
||||
- copyloopvar
|
||||
- depguard
|
||||
- dogsled
|
||||
- errcheck
|
||||
- exportloopref
|
||||
- gci
|
||||
- goconst
|
||||
- gocritic
|
||||
|
|
@ -30,14 +29,12 @@ linters:
|
|||
- revive
|
||||
- rowserrcheck
|
||||
- staticcheck
|
||||
- structcheck
|
||||
- stylecheck
|
||||
- thelper
|
||||
- typecheck
|
||||
- unconvert
|
||||
- unparam
|
||||
- unused
|
||||
- varcheck
|
||||
- whitespace
|
||||
|
||||
linters-settings:
|
||||
|
|
@ -53,7 +50,17 @@ linters-settings:
|
|||
# Maximum length of variable declaration measured in number of characters, after which linter won't suggest using short syntax.
|
||||
max-decl-chars: 50
|
||||
gci:
|
||||
local-prefixes: "github.com/kubesphere/kubekey"
|
||||
sections:
|
||||
- standard
|
||||
- default
|
||||
- prefix(github.com/kubesphere/kubekey)
|
||||
depguard:
|
||||
rules:
|
||||
main:
|
||||
deny:
|
||||
# Disable depguard for this project
|
||||
allow:
|
||||
- $all
|
||||
importas:
|
||||
no-unaliased: true
|
||||
alias:
|
||||
|
|
@ -130,8 +137,19 @@ linters-settings:
|
|||
alias: infracontrolplanev1
|
||||
nolintlint:
|
||||
allow-unused: false
|
||||
allow-leading-space: false
|
||||
require-specific: true
|
||||
gosec:
|
||||
excludes:
|
||||
- G301 # Directory permissions
|
||||
- G601 # Implicit memory aliasing in for loop
|
||||
- G115 # Integer overflow conversion
|
||||
- G106 # SSH InsecureIgnoreHostKey
|
||||
- G302 # File permissions
|
||||
- G304 # File path provided as taint input
|
||||
- G306 # Write to a file with weak permissions
|
||||
- G307 # Deferring unsafe method Close
|
||||
- G108 # Profiling endpoint is automatically exposed on /debug/pprof
|
||||
- G402 # Look for bad TLS connection settings
|
||||
revive:
|
||||
rules:
|
||||
# The following rules are recommended https://github.com/mgechev/revive#recommended-configuration
|
||||
|
|
@ -164,10 +182,6 @@ linters-settings:
|
|||
#
|
||||
- name: bool-literal-in-expr
|
||||
- name: constant-logical-expr
|
||||
gosec:
|
||||
excludes:
|
||||
- G307 # Deferring unsafe method "Close" on type "\*os.File"
|
||||
- G108 # Profiling endpoint is automatically exposed on /debug/pprof
|
||||
gocritic:
|
||||
enabled-tags:
|
||||
- experimental
|
||||
|
|
@ -187,15 +201,70 @@ linters-settings:
|
|||
- wrapperFunc
|
||||
- commentFormatting
|
||||
- filepathJoin
|
||||
- rangeValCopy
|
||||
- hugeParam
|
||||
issues:
|
||||
max-same-issues: 0
|
||||
max-issues-per-linter: 0
|
||||
# We are disabling default golangci exclusions because we want to help reviewers to focus on reviewing the most relevant
|
||||
# changes in PRs and avoid nitpicking.
|
||||
exclude-use-default: false
|
||||
exclude-files:
|
||||
- "zz_generated.*\\.go$"
|
||||
- "vendored_openapi\\.go$"
|
||||
- "cmd"
|
||||
exclude-rules:
|
||||
# Disable depguard for all files since it's too restrictive
|
||||
- linters:
|
||||
- depguard
|
||||
text: ".*"
|
||||
# Disable copyloopvar for test files (Go 1.22+ loop variable scoping)
|
||||
- linters:
|
||||
- copyloopvar
|
||||
text: "The copy of the 'for' variable.*can be deleted"
|
||||
path: ".*_test\\.go$"
|
||||
# Disable gci formatting issues for kubebuilder scaffold comments
|
||||
- linters:
|
||||
- gci
|
||||
text: "File is not properly formatted"
|
||||
source: "//\\+kubebuilder:scaffold:imports"
|
||||
# Disable specific gocritic rules
|
||||
- linters:
|
||||
- gocritic
|
||||
text: "uncheckedInlineErr:"
|
||||
- linters:
|
||||
- gocritic
|
||||
text: "preferFprint:"
|
||||
# Disable nakedret for specific functions
|
||||
- linters:
|
||||
- nakedret
|
||||
text: "naked return in func"
|
||||
# Disable staticcheck SA1019 for rand.Seed deprecation
|
||||
- linters:
|
||||
- staticcheck
|
||||
text: "SA1019: rand.Seed has been deprecated"
|
||||
# Disable unparam for controller methods that always return nil
|
||||
- linters:
|
||||
- unparam
|
||||
text: "result 0.*is always nil"
|
||||
path: "controllers/.*"
|
||||
- linters:
|
||||
- unparam
|
||||
text: "result 0.*is always nil"
|
||||
path: "controlplane/.*"
|
||||
# Disable nolintlint for test files with gosec directives
|
||||
- linters:
|
||||
- nolintlint
|
||||
text: "directive.*is unused for linter \"gosec\""
|
||||
path: "test/.*"
|
||||
# Disable gosec rules that are too restrictive for this project
|
||||
- linters:
|
||||
- gosec
|
||||
text: "G301: Expect directory permissions to be 0750 or less"
|
||||
- linters:
|
||||
- gosec
|
||||
text: "G601: Implicit memory aliasing in for loop"
|
||||
- linters:
|
||||
- gosec
|
||||
text: "G115: integer overflow conversion"
|
||||
- linters:
|
||||
- revive
|
||||
text: "exported: exported method .*\\.(Reconcile|SetupWithManager|SetupWebhookWithManager) should have comment or be unexported"
|
||||
|
|
@ -274,15 +343,11 @@ issues:
|
|||
|
||||
run:
|
||||
timeout: 10m
|
||||
go: "1.19"
|
||||
go: "1.23"
|
||||
build-tags:
|
||||
- tools
|
||||
- e2e
|
||||
- containers_image_openpgp
|
||||
- exclude_graphdriver_devicemapper
|
||||
- exclude_graphdriver_btrfs
|
||||
skip-files:
|
||||
- "zz_generated.*\\.go$"
|
||||
- "vendored_openapi\\.go$"
|
||||
- "cmd"
|
||||
allow-parallel-runners: true
|
||||
allow-parallel-runners: true
|
||||
Loading…
Reference in New Issue