From e9868dbcf6f760d6138297a76891fad0582696eb Mon Sep 17 00:00:00 2001 From: "Adam D. Cornett" Date: Fri, 3 Jan 2025 09:37:21 -0700 Subject: [PATCH] updating project to use go 1.23 Signed-off-by: Adam D. Cornett --- Makefile | 2 +- go.mod | 2 +- .../memcached_with_customization.go | 4 +-- images/custom-scorecard-tests/Dockerfile | 4 +-- images/helm-operator/Dockerfile | 4 +-- images/operator-sdk/Dockerfile | 6 ++-- images/scorecard-test-kuttl/Dockerfile | 2 +- images/scorecard-test/Dockerfile | 4 +-- images/scorecard-untar/Dockerfile | 2 +- internal/cmd/helm-operator/run/cmd.go | 2 +- internal/cmd/helm-operator/version/cmd.go | 2 +- .../operator-sdk/alpha/config3alphato3/cmd.go | 4 +-- .../cmd/operator-sdk/bundle/validate/cmd.go | 2 +- internal/cmd/operator-sdk/olm/install.go | 2 +- internal/cmd/operator-sdk/olm/status.go | 2 +- internal/cmd/operator-sdk/olm/uninstall.go | 2 +- .../cmd/operator-sdk/pkgmantobundle/cmd.go | 4 +-- internal/cmd/operator-sdk/scorecard/cmd.go | 4 +-- .../packagemanifest/packagemanifest_test.go | 30 +++++++++---------- internal/helm/controller/reconcile.go | 2 +- internal/helm/flags/flag.go | 3 +- internal/olm/client/status.go | 2 +- internal/scorecard/kubeclient_test.go | 4 +-- internal/scorecard/tests/olm.go | 2 +- internal/testutils/utils.go | 6 ++-- .../developer-guide.md | 2 +- .../content/en/docs/installation/_index.md | 2 +- 27 files changed, 54 insertions(+), 53 deletions(-) diff --git a/Makefile b/Makefile index f5501d08ef2..35e5b58d11b 100644 --- a/Makefile +++ b/Makefile @@ -58,7 +58,7 @@ fix: ## Fixup files in the repo. .PHONY: setup-lint setup-lint: ## Setup the lint - $(SCRIPTS_DIR)/fetch golangci-lint 1.54.0 + $(SCRIPTS_DIR)/fetch golangci-lint 1.62.2 .PHONY: lint lint: setup-lint ## Run the lint check diff --git a/go.mod b/go.mod index 9030bb25b4d..894ab5f22b6 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/operator-framework/operator-sdk -go 1.22.5 +go 1.23.4 require ( github.com/blang/semver/v4 v4.0.0 diff --git a/hack/generate/samples/internal/go/memcached-with-customization/memcached_with_customization.go b/hack/generate/samples/internal/go/memcached-with-customization/memcached_with_customization.go index 9debd5b0496..cf2bd64fa03 100644 --- a/hack/generate/samples/internal/go/memcached-with-customization/memcached_with_customization.go +++ b/hack/generate/samples/internal/go/memcached-with-customization/memcached_with_customization.go @@ -52,7 +52,7 @@ func GenerateSample(binaryPath, samplesPath string) { errorInfo += monitoringString } - log.Infof(logInfo) + log.Info(logInfo) ctx, err := pkg.NewSampleContext(binaryPath, filepath.Join(samplesPath, "memcached-operator"), "GO111MODULE=on") pkg.CheckError(errorInfo, err) @@ -71,7 +71,7 @@ func (mh *Memcached) Prepare() { logInfo += monitoringString } - log.Infof(logInfo) + log.Info(logInfo) mh.ctx.Destroy() log.Infof("creating directory") diff --git a/images/custom-scorecard-tests/Dockerfile b/images/custom-scorecard-tests/Dockerfile index 0ef2fcf2f54..c105bdae111 100644 --- a/images/custom-scorecard-tests/Dockerfile +++ b/images/custom-scorecard-tests/Dockerfile @@ -1,5 +1,5 @@ # Build the custom-scorecard-tests binary -FROM --platform=$BUILDPLATFORM golang:1.22 AS builder +FROM --platform=$BUILDPLATFORM golang:1.23 AS builder ARG TARGETARCH WORKDIR /workspace @@ -17,7 +17,7 @@ COPY . . RUN GOOS=linux GOARCH=$TARGETARCH make build/custom-scorecard-tests # Final image. -FROM registry.access.redhat.com/ubi9/ubi-minimal:9.4-1227.1726694542 +FROM registry.access.redhat.com/ubi9/ubi-minimal:9.5 ENV HOME=/opt/custom-scorecard-tests \ USER_NAME=custom-scorecard-tests \ diff --git a/images/helm-operator/Dockerfile b/images/helm-operator/Dockerfile index d734b6b5f37..8e498033390 100644 --- a/images/helm-operator/Dockerfile +++ b/images/helm-operator/Dockerfile @@ -1,5 +1,5 @@ # Build the manager binary -FROM --platform=$BUILDPLATFORM golang:1.22 AS builder +FROM --platform=$BUILDPLATFORM golang:1.23 AS builder ARG TARGETARCH WORKDIR /workspace @@ -17,7 +17,7 @@ COPY . . RUN GOOS=linux GOARCH=$TARGETARCH make build/helm-operator # Final image. -FROM registry.access.redhat.com/ubi9/ubi-minimal:9.4-1227.1726694542 +FROM registry.access.redhat.com/ubi9/ubi-minimal:9.5 ENV HOME=/opt/helm \ USER_NAME=helm \ diff --git a/images/operator-sdk/Dockerfile b/images/operator-sdk/Dockerfile index 19c874ce001..faee3bfc399 100644 --- a/images/operator-sdk/Dockerfile +++ b/images/operator-sdk/Dockerfile @@ -1,5 +1,5 @@ # Build the operator-sdk binary -FROM --platform=$BUILDPLATFORM golang:1.22 AS builder +FROM --platform=$BUILDPLATFORM golang:1.23 AS builder ARG TARGETARCH WORKDIR /workspace @@ -17,10 +17,10 @@ COPY . . RUN GOOS=linux GOARCH=$TARGETARCH make build/operator-sdk # Final image. -FROM registry.access.redhat.com/ubi9/ubi-minimal:9.4-1227.1726694542 +FROM registry.access.redhat.com/ubi9/ubi-minimal:9.5 # TODO: Figure out how to take the go binary from the builder image so this doesn't have to be maintained. -ENV GO_VERSION=1.22.5 +ENV GO_VERSION=1.23.4 ARG TARGETARCH RUN microdnf install -y make gcc which tar gzip diff --git a/images/scorecard-test-kuttl/Dockerfile b/images/scorecard-test-kuttl/Dockerfile index bc9f5990665..3265fc1b090 100644 --- a/images/scorecard-test-kuttl/Dockerfile +++ b/images/scorecard-test-kuttl/Dockerfile @@ -1,5 +1,5 @@ # Build the scorecard-test-kuttl binary -FROM --platform=$BUILDPLATFORM golang:1.22 AS builder +FROM --platform=$BUILDPLATFORM golang:1.23 AS builder ARG TARGETARCH ARG BUILDPLATFORM diff --git a/images/scorecard-test/Dockerfile b/images/scorecard-test/Dockerfile index 9e183b0f206..eb0619fe1bb 100644 --- a/images/scorecard-test/Dockerfile +++ b/images/scorecard-test/Dockerfile @@ -1,5 +1,5 @@ # Build the scorecard-test binary -FROM --platform=$BUILDPLATFORM golang:1.22 AS builder +FROM --platform=$BUILDPLATFORM golang:1.23 AS builder ARG TARGETARCH WORKDIR /workspace @@ -17,7 +17,7 @@ COPY . . RUN GOOS=linux GOARCH=$TARGETARCH make build/scorecard-test # Final image. -FROM registry.access.redhat.com/ubi9/ubi-minimal:9.4-1227.1726694542 +FROM registry.access.redhat.com/ubi9/ubi-minimal:9.5 ENV HOME=/opt/scorecard-test \ USER_NAME=scorecard-test \ diff --git a/images/scorecard-untar/Dockerfile b/images/scorecard-untar/Dockerfile index ebd8aa9dc8f..d0995596fc0 100644 --- a/images/scorecard-untar/Dockerfile +++ b/images/scorecard-untar/Dockerfile @@ -1,4 +1,4 @@ -FROM registry.access.redhat.com/ubi9/ubi:9.4-1214.1726694543 +FROM registry.access.redhat.com/ubi9/ubi:9.5 ## Create a new non-root user to run as ENV HOME=/opt/scorecard-untar \ diff --git a/internal/cmd/helm-operator/run/cmd.go b/internal/cmd/helm-operator/run/cmd.go index 17558b5d8d5..f42a8b62590 100644 --- a/internal/cmd/helm-operator/run/cmd.go +++ b/internal/cmd/helm-operator/run/cmd.go @@ -75,7 +75,7 @@ func NewCmd() *cobra.Command { cmd := &cobra.Command{ Use: "run", Short: "Run the operator", - Args: func(cmd *cobra.Command, args []string) error { + Args: func(cmd *cobra.Command, _ []string) error { if cmd.Flag("metrics-require-rbac").Value.String() == "true" && cmd.Flag("metrics-secure").Value.String() == "false" { return errors.New("--metrics-secure flag is required when --metrics-require-rbac is present") } diff --git a/internal/cmd/helm-operator/version/cmd.go b/internal/cmd/helm-operator/version/cmd.go index 832da13117d..e290741c045 100644 --- a/internal/cmd/helm-operator/version/cmd.go +++ b/internal/cmd/helm-operator/version/cmd.go @@ -27,7 +27,7 @@ func NewCmd() *cobra.Command { versionCmd := &cobra.Command{ Use: "version", Short: "Prints the version of operator-sdk", - Run: func(cmd *cobra.Command, args []string) { + Run: func(_ *cobra.Command, _ []string) { run() }, } diff --git a/internal/cmd/operator-sdk/alpha/config3alphato3/cmd.go b/internal/cmd/operator-sdk/alpha/config3alphato3/cmd.go index ec1ec951068..f2dac29eb26 100644 --- a/internal/cmd/operator-sdk/alpha/config3alphato3/cmd.go +++ b/internal/cmd/operator-sdk/alpha/config3alphato3/cmd.go @@ -34,7 +34,7 @@ The 3-alpha version has recently become stable (3), and therefore is no longer supported by operator-sdk v1.5+. This command is intended to migrate 3-alpha PROJECT files to 3 with as few manual modifications required as possible. `, - RunE: func(cmd *cobra.Command, args []string) (err error) { + RunE: func(_ *cobra.Command, _ []string) (err error) { cfgBytes, err := os.ReadFile("PROJECT") if err != nil { return fmt.Errorf("%v (config-3alpha-to-3 must be run from project root)", err) @@ -64,7 +64,7 @@ to 3 with as few manual modifications required as possible. // RootPersistentPreRun prints a helpful message on any exit caused by kubebuilder's // config unmarshal step finding "3-alpha", since the CLI will not recognize this version. // Add this to the root command (`operator-sdk`). -var RootPersistentPreRun = func(cmd *cobra.Command, args []string) { +var RootPersistentPreRun = func(_ *cobra.Command, _ []string) { if cfgBytes, err := os.ReadFile("PROJECT"); err == nil { if ver, err := getConfigVersion(cfgBytes); err == nil && ver == v3alpha { log.Warn("Config version 3-alpha has been stabilized as 3, and 3-alpha is no longer supported. " + diff --git a/internal/cmd/operator-sdk/bundle/validate/cmd.go b/internal/cmd/operator-sdk/bundle/validate/cmd.go index 705b31b6e6b..b81e91cfe63 100644 --- a/internal/cmd/operator-sdk/bundle/validate/cmd.go +++ b/internal/cmd/operator-sdk/bundle/validate/cmd.go @@ -121,7 +121,7 @@ func NewCmd() *cobra.Command { Short: "Validate an operator bundle", Long: longHelp, Example: examples, - RunE: func(cmd *cobra.Command, args []string) (err error) { + RunE: func(_ *cobra.Command, args []string) (err error) { // Always print non-output logs to stderr as to not pollute actual command output. // Note that it allows the JSON result be redirected to the Stdout. E.g // if we run the command with `| jq . > result.json` the command will print just the logs diff --git a/internal/cmd/operator-sdk/olm/install.go b/internal/cmd/operator-sdk/olm/install.go index 4ac66e9fb51..9e5ac57c81a 100644 --- a/internal/cmd/operator-sdk/olm/install.go +++ b/internal/cmd/operator-sdk/olm/install.go @@ -26,7 +26,7 @@ func newInstallCmd() *cobra.Command { cmd := &cobra.Command{ Use: "install", Short: "Install Operator Lifecycle Manager in your cluster", - RunE: func(cmd *cobra.Command, args []string) error { + RunE: func(_ *cobra.Command, _ []string) error { if err := mgr.Install(); err != nil { log.Fatalf("Failed to install OLM version %q: %s", mgr.Version, err) } diff --git a/internal/cmd/operator-sdk/olm/status.go b/internal/cmd/operator-sdk/olm/status.go index a054f01ce5b..b817a036e59 100644 --- a/internal/cmd/operator-sdk/olm/status.go +++ b/internal/cmd/operator-sdk/olm/status.go @@ -26,7 +26,7 @@ func newStatusCmd() *cobra.Command { cmd := &cobra.Command{ Use: "status", Short: "Get the status of the Operator Lifecycle Manager installation in your cluster", - RunE: func(cmd *cobra.Command, args []string) error { + RunE: func(_ *cobra.Command, _ []string) error { if err := mgr.Status(); err != nil { log.Fatalf("Failed to get OLM status: %s", err) } diff --git a/internal/cmd/operator-sdk/olm/uninstall.go b/internal/cmd/operator-sdk/olm/uninstall.go index fde30af1fb2..0c9b866ce4b 100644 --- a/internal/cmd/operator-sdk/olm/uninstall.go +++ b/internal/cmd/operator-sdk/olm/uninstall.go @@ -26,7 +26,7 @@ func newUninstallCmd() *cobra.Command { cmd := &cobra.Command{ Use: "uninstall", Short: "Uninstall Operator Lifecycle Manager from your cluster", - RunE: func(cmd *cobra.Command, args []string) error { + RunE: func(_ *cobra.Command, _ []string) error { if err := mgr.Uninstall(); err != nil { log.Fatalf("Failed to uninstall OLM: %s", err) } diff --git a/internal/cmd/operator-sdk/pkgmantobundle/cmd.go b/internal/cmd/operator-sdk/pkgmantobundle/cmd.go index a9ee3b868b1..6924a4fef2a 100644 --- a/internal/cmd/operator-sdk/pkgmantobundle/cmd.go +++ b/internal/cmd/operator-sdk/pkgmantobundle/cmd.go @@ -127,10 +127,10 @@ func NewCmd() *cobra.Command { Short: "Migrates packagemanifests to bundles", Long: longHelp, Example: examples, - PreRunE: func(cmd *cobra.Command, args []string) (err error) { + PreRunE: func(_ *cobra.Command, args []string) (err error) { return p.validate(args) }, - RunE: func(cmd *cobra.Command, args []string) (err error) { + RunE: func(_ *cobra.Command, args []string) (err error) { p.pkgmanifestDir = args[0] return p.run() }, diff --git a/internal/cmd/operator-sdk/scorecard/cmd.go b/internal/cmd/operator-sdk/scorecard/cmd.go index d81a869d056..a654c9a69dd 100644 --- a/internal/cmd/operator-sdk/scorecard/cmd.go +++ b/internal/cmd/operator-sdk/scorecard/cmd.go @@ -66,10 +66,10 @@ func NewCmd() *cobra.Command { Long: `Has flags to configure dsl, bundle, and selector. This command takes one argument, either a bundle image or directory containing manifests and metadata. If the argument holds an image tag, it must be present remotely.`, - PreRunE: func(cmd *cobra.Command, args []string) (err error) { + PreRunE: func(_ *cobra.Command, args []string) (err error) { return c.validate(args) }, - RunE: func(cmd *cobra.Command, args []string) (err error) { + RunE: func(_ *cobra.Command, args []string) (err error) { c.bundle = args[0] return c.run() }, diff --git a/internal/generate/packagemanifest/packagemanifest_test.go b/internal/generate/packagemanifest/packagemanifest_test.go index 3fc612f8204..9c26f30c44c 100644 --- a/internal/generate/packagemanifest/packagemanifest_test.go +++ b/internal/generate/packagemanifest/packagemanifest_test.go @@ -20,7 +20,7 @@ import ( . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" - . "github.com/operator-framework/operator-sdk/internal/generate/packagemanifest" + "github.com/operator-framework/operator-sdk/internal/generate/packagemanifest" ) var _ = Describe("A package manifest generator", func() { @@ -32,8 +32,8 @@ var _ = Describe("A package manifest generator", func() { }) Describe("Generate", func() { var ( - g Generator - blankOpts Options + g packagemanifest.Generator + blankOpts packagemanifest.Options operatorName string outputDir string pkgManFilename string @@ -44,9 +44,9 @@ var _ = Describe("A package manifest generator", func() { pkgManUpdatedSecondChannelNewDefault string ) BeforeEach(func() { - g = NewGenerator() + g = packagemanifest.NewGenerator() operatorName = "memcached-operator" - blankOpts = Options{} + blankOpts = packagemanifest.Options{} pkgManFilename = operatorName + ".package.yaml" outputDir = os.TempDir() pkgManDefault = `channels: @@ -93,7 +93,7 @@ packageName: memcached-operator Expect(string(file)).To(Equal(pkgManDefault)) }) It("writes a package manifest with a non-default channel", func() { - opts := Options{ + opts := packagemanifest.Options{ ChannelName: "stable", } @@ -106,7 +106,7 @@ packageName: memcached-operator }) Context("when updating an existing package manifest", func() { It("creates a new package manifest if provided an existing packagemanifest that doesn't exist", func() { - opts := Options{ + opts := packagemanifest.Options{ BaseDir: "testpotato", ChannelName: "stable", } @@ -118,7 +118,7 @@ packageName: memcached-operator Expect(string(file)).To(Equal(pkgManOneChannel)) }) It("updates an existing package manifest with a updated channel", func() { - opts := Options{ + opts := packagemanifest.Options{ BaseDir: testDataDir, ChannelName: "alpha", } @@ -130,7 +130,7 @@ packageName: memcached-operator Expect(string(file)).To(Equal(pkgManUpdatedOneChannel)) }) It("updates an existing package manifest with a new channel", func() { - opts := Options{ + opts := packagemanifest.Options{ BaseDir: testDataDir, ChannelName: "stable", } @@ -142,7 +142,7 @@ packageName: memcached-operator Expect(string(file)).To(Equal(pkgManUpdatedSecondChannel)) }) It("updates an existing package manifest with a new channel and an updated default channel", func() { - opts := Options{ + opts := packagemanifest.Options{ BaseDir: testDataDir, ChannelName: "stable", IsDefaultChannel: true, @@ -159,26 +159,26 @@ packageName: memcached-operator It("fails if no operator name is specified", func() { err := g.Generate("", "", "", blankOpts) Expect(err).To(HaveOccurred()) - Expect(err.Error()).To(ContainSubstring(ErrNoOpName.Error())) + Expect(err.Error()).To(ContainSubstring(packagemanifest.ErrNoOpName.Error())) }) It("fails if no version is specified", func() { err := g.Generate(operatorName, "", "", blankOpts) Expect(err).To(HaveOccurred()) - Expect(err.Error()).To(ContainSubstring(ErrNoVersion.Error())) + Expect(err.Error()).To(ContainSubstring(packagemanifest.ErrNoVersion.Error())) }) It("fails if no output directory is set", func() { err := g.Generate(operatorName, "0.0.1", "", blankOpts) Expect(err).To(HaveOccurred()) - Expect(err.Error()).To(ContainSubstring(ErrNoOutputDir.Error())) + Expect(err.Error()).To(ContainSubstring(packagemanifest.ErrNoOutputDir.Error())) }) }) }) Describe("GetBase", func() { var ( - b PackageManifest + b packagemanifest.PackageManifest ) BeforeEach(func() { - b = PackageManifest{} + b = packagemanifest.PackageManifest{} }) It("returns a new blank packagemanifest", func() { b.PackageName = "sweetsop" diff --git a/internal/helm/controller/reconcile.go b/internal/helm/controller/reconcile.go index c4fd9c99ee4..19545016513 100644 --- a/internal/helm/controller/reconcile.go +++ b/internal/helm/controller/reconcile.go @@ -467,7 +467,7 @@ func readBoolAnnotationWithDefault(obj *unstructured.Unstructured, annotation st r, err := strconv.ParseBool(val) if err != nil { log.Error( - fmt.Errorf(strings.ToLower(err.Error())), "error parsing annotation", "annotation", annotation) + fmt.Errorf("%s", strings.ToLower(err.Error())), "error parsing annotation", "annotation", annotation) return fallback } diff --git a/internal/helm/flags/flag.go b/internal/helm/flags/flag.go index 1b0a7e42728..70821158e22 100644 --- a/internal/helm/flags/flag.go +++ b/internal/helm/flags/flag.go @@ -151,7 +151,8 @@ func (f *Flags) ToManagerOptions(options manager.Options) manager.Options { return f.flagSet.Changed(flagName) } if f.flagSet == nil { - changed = func(flagName string) bool { return false } + //nolint:golint + changed = func(_ string) bool { return false } } // TODO(2.0.0): remove metrics-addr diff --git a/internal/olm/client/status.go b/internal/olm/client/status.go index 1815109f531..b90e20ce283 100644 --- a/internal/olm/client/status.go +++ b/internal/olm/client/status.go @@ -91,7 +91,7 @@ func (s Status) HasInstalledResources() (bool, error) { } // Sort resources by whether they're installed or not to get consistent // return values. - sort.Slice(s.Resources, func(i int, j int) bool { + sort.Slice(s.Resources, func(i int, _ int) bool { return s.Resources[i].Resource != nil }) for _, r := range s.Resources { diff --git a/internal/scorecard/kubeclient_test.go b/internal/scorecard/kubeclient_test.go index d8f0c12cdca..a2806bf70f4 100644 --- a/internal/scorecard/kubeclient_test.go +++ b/internal/scorecard/kubeclient_test.go @@ -25,7 +25,7 @@ func TestGetKubeNamespace(t *testing.T) { // create temp kubeconfig file file, err := os.CreateTemp("/tmp", "") if err != nil { - t.Fatalf(err.Error()) + t.Fatal(err.Error()) } defer os.Remove(file.Name()) @@ -62,7 +62,7 @@ func TestGetKubeNamespaceEnvVar(t *testing.T) { // create temp kubeconfig file file, err := os.CreateTemp("/tmp", "") if err != nil { - t.Fatalf(err.Error()) + t.Fatal(err.Error()) } defer os.Remove(file.Name()) diff --git a/internal/scorecard/tests/olm.go b/internal/scorecard/tests/olm.go index 02bf21b5d8c..e0bfd760498 100644 --- a/internal/scorecard/tests/olm.go +++ b/internal/scorecard/tests/olm.go @@ -175,7 +175,7 @@ func CRDsHaveResourcesTest(bundle *apimanifests.Bundle) scapiv1alpha3.TestStatus func CheckResources(crd operatorsv1alpha1.CustomResourceDefinitions, r scapiv1alpha3.TestResult) scapiv1alpha3.TestResult { for _, description := range crd.Owned { - if description.Resources == nil || len(description.Resources) == 0 { + if len(description.Resources) == 0 { r.State = scapiv1alpha3.FailState r.Errors = append(r.Errors, "Owned CRDs do not have resources specified") return r diff --git a/internal/testutils/utils.go b/internal/testutils/utils.go index 2adca96bae5..dd6796de664 100644 --- a/internal/testutils/utils.go +++ b/internal/testutils/utils.go @@ -107,7 +107,7 @@ func (tc TestContext) UninstallOLM() { // ReplaceInFile replaces all instances of old with new in the file at path. // todo(camilamacedo86): this func can be pushed to upstream/kb -func ReplaceInFile(path, old, new string) error { +func ReplaceInFile(path, o, n string) error { info, err := os.Stat(path) if err != nil { return err @@ -116,10 +116,10 @@ func ReplaceInFile(path, old, new string) error { if err != nil { return err } - if !strings.Contains(string(b), old) { + if !strings.Contains(string(b), o) { return errors.New("unable to find the content to be replaced") } - s := strings.Replace(string(b), old, new, -1) + s := strings.Replace(string(b), o, n, -1) err = os.WriteFile(path, []byte(s), info.Mode()) if err != nil { return err diff --git a/website/content/en/docs/contribution-guidelines/developer-guide.md b/website/content/en/docs/contribution-guidelines/developer-guide.md index 9d2f4bfe410..e0e86ec2442 100644 --- a/website/content/en/docs/contribution-guidelines/developer-guide.md +++ b/website/content/en/docs/contribution-guidelines/developer-guide.md @@ -9,7 +9,7 @@ weight: 1 ### Prerequisites - [git][git-tool] -- [go][go-tool] version 1.22 +- [go][go-tool] version 1.23 ### Download Operator SDK diff --git a/website/content/en/docs/installation/_index.md b/website/content/en/docs/installation/_index.md index cfb4669694e..b9af6f7f4ef 100644 --- a/website/content/en/docs/installation/_index.md +++ b/website/content/en/docs/installation/_index.md @@ -88,7 +88,7 @@ chmod +x operator-sdk_${OS}_${ARCH} && sudo mv operator-sdk_${OS}_${ARCH} /usr/l #### Prerequisites - [git][git_tool] -- [go][go_tool] version 1.22 +- [go][go_tool] version 1.23 - Ensure that your `GOPROXY` is set to `"https://proxy.golang.org|direct"` ```sh