diff --git a/go.mod b/go.mod index 4638cc1f..18a1cb1e 100644 --- a/go.mod +++ b/go.mod @@ -30,7 +30,6 @@ require ( github.com/spf13/pflag v1.0.5 github.com/stretchr/testify v1.8.1 github.com/tdewolff/minify/v2 v2.12.4 - go.uber.org/atomic v1.10.0 go.uber.org/zap v1.24.0 golang.org/x/crypto v0.5.0 golang.org/x/net v0.5.0 @@ -139,6 +138,7 @@ require ( go.opentelemetry.io/otel/sdk v1.10.0 // indirect go.opentelemetry.io/otel/trace v1.10.0 // indirect go.opentelemetry.io/proto/otlp v0.19.0 // indirect + go.uber.org/atomic v1.10.0 // indirect go.uber.org/multierr v1.8.0 // indirect golang.org/x/mod v0.7.0 // indirect golang.org/x/sys v0.4.0 // indirect diff --git a/internal/leaderelection/leaderelection.go b/internal/leaderelection/leaderelection.go index a3cca966..82e349da 100644 --- a/internal/leaderelection/leaderelection.go +++ b/internal/leaderelection/leaderelection.go @@ -1,4 +1,4 @@ -// Copyright 2021-2022 the Pinniped contributors. All Rights Reserved. +// Copyright 2021-2023 the Pinniped contributors. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 package leaderelection @@ -6,9 +6,9 @@ package leaderelection import ( "context" "fmt" + "sync/atomic" "time" - "go.uber.org/atomic" appsv1 "k8s.io/api/apps/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/client-go/kubernetes" @@ -45,7 +45,7 @@ func New(podInfo *downward.PodInfo, deployment *appsv1.Deployment, opts ...kubec return nil, nil, fmt.Errorf("could not create internal client for leader election: %w", err) } - isLeader := &isLeaderTracker{tracker: atomic.NewBool(false)} + isLeader := &isLeaderTracker{tracker: &atomic.Bool{}} identity := podInfo.Name leaseName := deployment.Name diff --git a/internal/leaderelection/leaderelection_test.go b/internal/leaderelection/leaderelection_test.go index 8446614e..088ff2b4 100644 --- a/internal/leaderelection/leaderelection_test.go +++ b/internal/leaderelection/leaderelection_test.go @@ -1,4 +1,4 @@ -// Copyright 2021 the Pinniped contributors. All Rights Reserved. +// Copyright 2021-2023 the Pinniped contributors. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 package leaderelection @@ -6,11 +6,11 @@ package leaderelection import ( "context" "errors" + "sync/atomic" "testing" "time" "github.com/stretchr/testify/require" - "go.uber.org/atomic" coordinationv1 "k8s.io/api/coordination/v1" "k8s.io/apimachinery/pkg/runtime" kubefake "k8s.io/client-go/kubernetes/fake" @@ -63,7 +63,7 @@ func Test_releaseLock_Update(t *testing.T) { t.Parallel() internalClient := kubefake.NewSimpleClientset() - isLeader := &isLeaderTracker{tracker: atomic.NewBool(false)} + isLeader := &isLeaderTracker{tracker: &atomic.Bool{}} leaderElectorCtx, cancel := context.WithCancel(context.Background()) diff --git a/internal/supervisor/server/bootstrap.go b/internal/supervisor/server/bootstrap.go index 826d86d1..9ffdf2b3 100644 --- a/internal/supervisor/server/bootstrap.go +++ b/internal/supervisor/server/bootstrap.go @@ -1,4 +1,4 @@ -// Copyright 2021 the Pinniped contributors. All Rights Reserved. +// Copyright 2021-2023 the Pinniped contributors. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 package server @@ -9,9 +9,9 @@ import ( "fmt" "net" "net/http" + "sync/atomic" "time" - "go.uber.org/atomic" "k8s.io/apimachinery/pkg/util/sets" "go.pinniped.dev/internal/certauthority" @@ -23,8 +23,8 @@ type contextKey int const bootstrapKey contextKey = iota func withBootstrapConnCtx(ctx context.Context, _ net.Conn) context.Context { - isBootstrap := atomic.NewBool(false) // safe for concurrent access - return context.WithValue(ctx, bootstrapKey, isBootstrap) + isBootstrap := atomic.Bool{} // safe for concurrent access + return context.WithValue(ctx, bootstrapKey, &isBootstrap) } func setIsBootstrapConn(ctx context.Context) {