diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 234d43a..d9ebf18 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -18,7 +18,7 @@ jobs: test: strategy: matrix: - go-version: [1.20.x] + go-version: [1.23.x] os: [ubuntu-latest] runs-on: ${{ matrix.os }} diff --git a/.golangci.yaml b/.golangci.yaml index 40898db..a867e1c 100644 --- a/.golangci.yaml +++ b/.golangci.yaml @@ -15,49 +15,21 @@ run: build-tags: - mytag - # which dirs to skip: issues from them won't be reported; - # can use regexp here: generated.*, regexp is applied on full path; - # default value is empty list, but default dirs are skipped independently - # from this option's value (see skip-dirs-use-default). - # "/" will be replaced by current OS file path separator to properly work - # on Windows. - skip-dirs: - - "./include/*" - - # default is true. Enables skipping of directories: - # vendor$, third_party$, testdata$, examples$, Godeps$, builtin$ - skip-dirs-use-default: true - - # which files to skip: they will be analyzed, but issues from them - # won't be reported. Default value is empty list, but there is - # no need to include all autogenerated files, we confidently recognize - # autogenerated files. If it's not please let us know. - # "/" will be replaced by current OS file path separator to properly work - # on Windows. - skip-files: - - ".*\\.my\\.go$" - - lib/bad.go - # Allow multiple parallel golangci-lint instances running. # If false (default) - golangci-lint acquires file lock on start. allow-parallel-runners: false + go: "1.23.5" + # output configuration options output: - # colored-line-number|line-number|json|tab|checkstyle|code-climate|junit-xml|github-actions - # default is "colored-line-number" - format: colored-line-number - # print lines of code with issue, default is true print-issued-lines: true # print linter name in the end of issue text, default is true print-linter-name: true - # make issues output unique by line, default is true - uniq-by-line: true - # add a prefix to the output file references; default is no prefix path-prefix: "" @@ -147,10 +119,13 @@ linters-settings: statements: 40 gci: - # put imports beginning with prefix after 3rd-party packages; - # only support one prefix - # if not set, use goimports.local-prefixes - local-prefixes: github.com/org/project + sections: + - standard + - default + - prefix(github.com/stackitcloud/external-dns-stackit-webhook) + + goimports: + local-prefixes: github.com/stackitcloud/external-dns-stackit-webhook gocognit: # minimal code complexity to report, 30 by default (but we recommend 10-20) @@ -268,13 +243,6 @@ linters-settings: # simplify code: gofmt with `-s` option, true by default simplify: true - gofumpt: - # Select the Go version to target. The default is `1.15`. - lang-version: "1.15" - - # Choose whether or not to use the extra rules that are disabled - # by default - extra-rules: false goheader: values: @@ -305,11 +273,6 @@ linters-settings: template-path: # also as alternative of directive 'template' you may put the path to file with the template source - goimports: - # put imports beginning with prefix after 3rd-party packages; - # it's a comma-separated list of prefixes - local-prefixes: github.com/org/project - golint: # minimal confidence for issues, default is 0.8 min-confidence: 0.8 @@ -383,15 +346,10 @@ linters-settings: truncate: "32" gosimple: - # Select the Go version to target. The default is '1.13'. - go: "1.15" # https://staticcheck.io/docs/options#checks checks: [ "all" ] govet: - # report about shadowed variables - check-shadowing: true - # settings per analyzer settings: printf: # analyzer name, run `go tool vet help` to see all analyzers @@ -405,9 +363,9 @@ linters-settings: # run `go tool vet help` to see all analyzers enable: - atomicalign - enable-all: false - disable: - shadow + + enable-all: false disable-all: false depguard: @@ -551,14 +509,10 @@ linters-settings: allowFloats: "0.0,0.,1.0,1.,2.0,2." staticcheck: - # Select the Go version to target. The default is '1.13'. - go: "1.15" # https://staticcheck.io/docs/options#checks checks: [ "all" ] stylecheck: - # Select the Go version to target. The default is '1.13'. - go: "1.15" # https://staticcheck.io/docs/options#checks checks: [ "all", "-ST1000", "-ST1003", "-ST1016", "-ST1020", "-ST1021", "-ST1022" ] # https://staticcheck.io/docs/options#dot_import_whitelist @@ -600,11 +554,6 @@ linters-settings: name: true begin: true - tenv: - # The option `all` will run against whole test files (`_test.go`) regardless of method/function signatures. - # By default, only methods that take `*testing.T`, `*testing.B`, and `testing.TB` as arguments are checked. - all: false - unparam: # Inspect exported functions, default is false. Set to true if no external program/library imports your code. # XXX: if you enable this setting, unparam will report a lot of false-positives in text editors: @@ -613,8 +562,6 @@ linters-settings: check-exported: false unused: - # Select the Go version to target. The default is '1.13'. - go: "1.15" varnamelen: # The longest distance, in source lines, that is being considered a "small scope." (defaults to 5) @@ -674,7 +621,6 @@ linters: - errname - errorlint - exhaustive - - exportloopref - forcetypeassert - funlen - gci @@ -685,7 +631,6 @@ linters: - godot - godox - gofmt - - gofumpt - goheader - gomoddirectives - gomodguard @@ -708,12 +653,12 @@ linters: - predeclared - promlinter - staticcheck - - tenv - thelper - tparallel - unconvert - unparam - unused + - usetesting - whitespace - paralleltest enable-all: false @@ -726,14 +671,11 @@ linters: - goimports - lll - stylecheck - - gomnd - testpackage - wrapcheck - - golint - - scopelint - typecheck - tagliatelle - - goerr113 + - err113 - gochecknoglobals - wsl - revive @@ -819,12 +761,10 @@ issues: # Default is false. new: false - # Show only new issues created after git revision `REV` - new-from-rev: REV - # Fix found issues (if it's supported by the linter) fix: true + severity: # Default value is empty string. # Set the default severity for issues. If severity rules are defined and the issues diff --git a/Makefile b/Makefile index c17d598..44f97eb 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -GOLANGCI_VERSION = 1.59.1 +GOLANGCI_VERSION = 1.64.8 LICENCES_IGNORE_LIST = $(shell cat licenses/licenses-ignore-list.txt) VERSION ?= 0.0.1 diff --git a/cmd/webhook/cmd/root.go b/cmd/webhook/cmd/root.go index 71b2042..4c611c0 100644 --- a/cmd/webhook/cmd/root.go +++ b/cmd/webhook/cmd/root.go @@ -8,13 +8,14 @@ import ( "github.com/spf13/cobra" "github.com/spf13/pflag" "github.com/spf13/viper" + "go.uber.org/zap" + "go.uber.org/zap/zapcore" + "sigs.k8s.io/external-dns/endpoint" + "github.com/stackitcloud/external-dns-stackit-webhook/internal/stackitprovider" "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api" "github.com/stackitcloud/external-dns-stackit-webhook/pkg/metrics" "github.com/stackitcloud/external-dns-stackit-webhook/pkg/stackit" - "go.uber.org/zap" - "go.uber.org/zap/zapcore" - "sigs.k8s.io/external-dns/endpoint" ) var ( diff --git a/go.mod b/go.mod index 7e0406a..ee1fed4 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,8 @@ module github.com/stackitcloud/external-dns-stackit-webhook -go 1.20 +go 1.23.0 + +toolchain go1.23.5 require ( github.com/goccy/go-json v0.10.2 @@ -64,9 +66,9 @@ require ( github.com/valyala/tcplisten v1.0.0 // indirect go.uber.org/multierr v1.11.0 // indirect golang.org/x/exp v0.0.0-20231006140011-7918f672742d // indirect - golang.org/x/net v0.33.0 // indirect - golang.org/x/sys v0.28.0 // indirect - golang.org/x/text v0.21.0 // indirect + golang.org/x/net v0.36.0 // indirect + golang.org/x/sys v0.30.0 // indirect + golang.org/x/text v0.22.0 // indirect google.golang.org/protobuf v1.33.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/ini.v1 v1.67.0 // indirect diff --git a/go.sum b/go.sum index 9f6cf84..7f8a612 100644 --- a/go.sum +++ b/go.sum @@ -66,6 +66,7 @@ github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5y github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/frankban/quicktest v1.14.4 h1:g2rn0vABPOOXmZUj+vbmUp0lPoXEMuhTpIluN0XL9UY= +github.com/frankban/quicktest v1.14.4/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY= github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= @@ -173,9 +174,11 @@ github.com/klauspost/compress v1.17.1/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQs github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= +github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY= github.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0= github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= @@ -271,6 +274,7 @@ go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.uber.org/goleak v1.2.0 h1:xqgm/S+aQvhWFTtR0XK3Jvg7z8kGV8P4X14IzwN3Eqk= +go.uber.org/goleak v1.2.0/go.mod h1:XJYK+MuIchqpmGmUSAzotztawfKvYLUIgg7guXrwVUo= go.uber.org/mock v0.3.0 h1:3mUxI1No2/60yUYax92Pt8eNOEecx2D3lcXZh2NEZJo= go.uber.org/mock v0.3.0/go.mod h1:a6FSlNadKUHUa9IP5Vyt1zh4fC7uAwxMutEAscFbkZc= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= @@ -355,8 +359,8 @@ golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco= -golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I= -golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4= +golang.org/x/net v0.36.0 h1:vWF2fRbw4qslQsQzgFqZff+BItCvGFQqKzKIzx1rmoA= +golang.org/x/net v0.36.0/go.mod h1:bFmbeoIPfrw4sMHNhb4J9f6+tPziuGjq7Jk/38fxi1I= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -419,8 +423,8 @@ golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA= -golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.30.0 h1:QjkSwP/36a20jFYWkSue1YwXzLmsV5Gfq7Eiy72C1uc= +golang.org/x/sys v0.30.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= @@ -433,8 +437,8 @@ golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo= -golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ= +golang.org/x/text v0.22.0 h1:bofq7m3/HAFvbF51jz3Q9wLg3jkvSPuiZu/pD1XwgtM= +golang.org/x/text v0.22.0/go.mod h1:YRoo4H8PVmsu+E3Ou7cqLVH8oXWIHVoX0jqUWALQhfY= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= @@ -587,6 +591,7 @@ google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHh gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= @@ -622,3 +627,4 @@ sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h6 sigs.k8s.io/structured-merge-diff/v4 v4.3.0 h1:UZbZAZfX0wV2zr7YZorDz6GXROfDFj6LvqCRm4VUVKk= sigs.k8s.io/structured-merge-diff/v4 v4.3.0/go.mod h1:N8hJocpFajUSSeSJ9bOZ77VzejKZaXsTtZo4/u7Io08= sigs.k8s.io/yaml v1.3.0 h1:a2VclLzOGrwOHDiV8EfBGhvjHvP46CtW5j6POvhYGGo= +sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= diff --git a/pkg/api/adjust_endpoints_test.go b/pkg/api/adjust_endpoints_test.go index 2694cd4..cc7483d 100644 --- a/pkg/api/adjust_endpoints_test.go +++ b/pkg/api/adjust_endpoints_test.go @@ -8,12 +8,13 @@ import ( "github.com/goccy/go-json" "github.com/gofiber/fiber/v2" - "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api" - mock_provider "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api/mock" "github.com/stretchr/testify/assert" "go.uber.org/mock/gomock" "go.uber.org/zap" "sigs.k8s.io/external-dns/endpoint" + + "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api" + mock_provider "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api/mock" ) func TestWebhook_AdjustEndpoints(t *testing.T) { diff --git a/pkg/api/api.go b/pkg/api/api.go index 314dab6..9d53458 100644 --- a/pkg/api/api.go +++ b/pkg/api/api.go @@ -15,9 +15,10 @@ import ( fiberlogger "github.com/gofiber/fiber/v2/middleware/logger" "github.com/gofiber/fiber/v2/middleware/pprof" fiberrecover "github.com/gofiber/fiber/v2/middleware/recover" - "github.com/stackitcloud/external-dns-stackit-webhook/pkg/metrics" "go.uber.org/zap" "sigs.k8s.io/external-dns/provider" + + "github.com/stackitcloud/external-dns-stackit-webhook/pkg/metrics" ) type Api interface { diff --git a/pkg/api/api_test.go b/pkg/api/api_test.go index 9a1b5c4..204e2fd 100644 --- a/pkg/api/api_test.go +++ b/pkg/api/api_test.go @@ -8,11 +8,12 @@ import ( "testing" "time" - "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api" - mock_provider "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api/mock" "github.com/stretchr/testify/assert" "go.uber.org/mock/gomock" "go.uber.org/zap" + + "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api" + mock_provider "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api/mock" ) func TestApi(t *testing.T) { diff --git a/pkg/api/apply_changes_test.go b/pkg/api/apply_changes_test.go index 256acd1..3ebda65 100644 --- a/pkg/api/apply_changes_test.go +++ b/pkg/api/apply_changes_test.go @@ -9,13 +9,14 @@ import ( "testing" "github.com/gofiber/fiber/v2" - "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api" - mock_provider "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api/mock" "github.com/stretchr/testify/assert" "go.uber.org/mock/gomock" "go.uber.org/zap" "sigs.k8s.io/external-dns/endpoint" "sigs.k8s.io/external-dns/plan" + + "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api" + mock_provider "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api/mock" ) func TestWebhook_ApplyChanges(t *testing.T) { diff --git a/pkg/api/domain_filter_test.go b/pkg/api/domain_filter_test.go index b117f3d..b41ebff 100644 --- a/pkg/api/domain_filter_test.go +++ b/pkg/api/domain_filter_test.go @@ -8,12 +8,13 @@ import ( "github.com/goccy/go-json" "github.com/gofiber/fiber/v2" - "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api" - mock_provider "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api/mock" "github.com/stretchr/testify/assert" "go.uber.org/mock/gomock" "go.uber.org/zap" "sigs.k8s.io/external-dns/endpoint" + + "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api" + mock_provider "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api/mock" ) func TestWebhook_DomainFilter(t *testing.T) { diff --git a/pkg/api/health_test.go b/pkg/api/health_test.go index b1b00be..5377b44 100644 --- a/pkg/api/health_test.go +++ b/pkg/api/health_test.go @@ -6,11 +6,12 @@ import ( "testing" "github.com/gofiber/fiber/v2" - "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api" - mock_provider "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api/mock" "github.com/stretchr/testify/assert" "go.uber.org/mock/gomock" "go.uber.org/zap" + + "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api" + mock_provider "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api/mock" ) func TestHealth(t *testing.T) { diff --git a/pkg/api/metrics.go b/pkg/api/metrics.go index bcfc5ef..e495d2e 100644 --- a/pkg/api/metrics.go +++ b/pkg/api/metrics.go @@ -7,6 +7,7 @@ import ( "github.com/gofiber/adaptor/v2" "github.com/gofiber/fiber/v2" "github.com/prometheus/client_golang/prometheus/promhttp" + metrics_collector "github.com/stackitcloud/external-dns-stackit-webhook/pkg/metrics" ) diff --git a/pkg/api/metrics_test.go b/pkg/api/metrics_test.go index 0b49546..6d246e1 100644 --- a/pkg/api/metrics_test.go +++ b/pkg/api/metrics_test.go @@ -6,11 +6,12 @@ import ( "testing" "github.com/gofiber/fiber/v2" + "github.com/stretchr/testify/assert" + "go.uber.org/mock/gomock" + "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api" metrics_collector "github.com/stackitcloud/external-dns-stackit-webhook/pkg/metrics" mock_metrics_collector "github.com/stackitcloud/external-dns-stackit-webhook/pkg/metrics/mock" - "github.com/stretchr/testify/assert" - "go.uber.org/mock/gomock" ) func TestMetricsMiddleware(t *testing.T) { diff --git a/pkg/api/records_test.go b/pkg/api/records_test.go index b5486fe..38cefc8 100644 --- a/pkg/api/records_test.go +++ b/pkg/api/records_test.go @@ -7,12 +7,13 @@ import ( "testing" "github.com/goccy/go-json" - "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api" - mock_provider "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api/mock" "github.com/stretchr/testify/assert" "go.uber.org/mock/gomock" "go.uber.org/zap" "sigs.k8s.io/external-dns/endpoint" + + "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api" + mock_provider "github.com/stackitcloud/external-dns-stackit-webhook/pkg/api/mock" ) func TestWebhook_Records(t *testing.T) {