Skip to content

Commit

Permalink
chore: use corev1 as import alias instead of v1
Browse files Browse the repository at this point in the history
Signed-off-by: Anish Ramasekar <anish.ramasekar@gmail.com>
  • Loading branch information
aramase committed Oct 18, 2021
1 parent d2b6407 commit e1f143c
Show file tree
Hide file tree
Showing 8 changed files with 130 additions and 130 deletions.
28 changes: 14 additions & 14 deletions controllers/secretproviderclasspodstatus_controller_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import (
secretsstorev1 "sigs.k8s.io/secrets-store-csi-driver/apis/v1"

. "github.com/onsi/gomega"
v1 "k8s.io/api/core/v1"
corev1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/types"
Expand All @@ -50,8 +50,8 @@ func setupScheme() (*runtime.Scheme, error) {
return scheme, nil
}

func newSecret(name, namespace string, labels map[string]string, annotations map[string]string) *v1.Secret {
return &v1.Secret{
func newSecret(name, namespace string, labels map[string]string, annotations map[string]string) *corev1.Secret {
return &corev1.Secret{
ObjectMeta: metav1.ObjectMeta{
Name: name,
Namespace: namespace,
Expand Down Expand Up @@ -98,8 +98,8 @@ func newSecretProviderClass(name, namespace string) *secretsstorev1.SecretProvid
}
}

func newPod(name, namespace string, owners []metav1.OwnerReference) *v1.Pod {
return &v1.Pod{
func newPod(name, namespace string, owners []metav1.OwnerReference) *corev1.Pod {
return &corev1.Pod{
ObjectMeta: metav1.ObjectMeta{
Name: name,
Namespace: namespace,
Expand Down Expand Up @@ -176,7 +176,7 @@ func TestPatchSecretWithOwnerRef(t *testing.T) {
err = reconciler.patchSecretWithOwnerRef(context.TODO(), "my-secret", "default", ref, ref)
g.Expect(err).NotTo(HaveOccurred())

secret := &v1.Secret{}
secret := &corev1.Secret{}
err = client.Get(context.TODO(), types.NamespacedName{Name: "my-secret", Namespace: "default"}, secret)
g.Expect(err).NotTo(HaveOccurred())
g.Expect(secret.GetOwnerReferences()).To(HaveLen(1))
Expand All @@ -198,12 +198,12 @@ func TestCreateK8sSecret(t *testing.T) {
reconciler := newReconciler(client, scheme, "node1")

// secret already exists
err = reconciler.createK8sSecret(context.TODO(), "my-secret", "default", nil, labels, annotations, v1.SecretTypeOpaque)
err = reconciler.createK8sSecret(context.TODO(), "my-secret", "default", nil, labels, annotations, corev1.SecretTypeOpaque)
g.Expect(err).NotTo(HaveOccurred())

err = reconciler.createK8sSecret(context.TODO(), "my-secret2", "default", nil, labels, annotations, v1.SecretTypeOpaque)
err = reconciler.createK8sSecret(context.TODO(), "my-secret2", "default", nil, labels, annotations, corev1.SecretTypeOpaque)
g.Expect(err).NotTo(HaveOccurred())
secret := &v1.Secret{}
secret := &corev1.Secret{}
err = client.Get(context.TODO(), types.NamespacedName{Name: "my-secret2", Namespace: "default"}, secret)
g.Expect(err).NotTo(HaveOccurred())

Expand All @@ -221,14 +221,14 @@ func TestGenerateEvent(t *testing.T) {
client := fake.NewClientBuilder().WithScheme(scheme).Build()
reconciler := newReconciler(client, scheme, "node1")

obj := &v1.ObjectReference{
obj := &corev1.ObjectReference{
Name: "pod1",
Namespace: "default",
UID: "481ab824-1f07-4611-bc08-c41f5cbb5a8d",
}

reconciler.generateEvent(obj, v1.EventTypeWarning, "reason", "message")
reconciler.generateEvent(obj, v1.EventTypeWarning, "reason2", "message2")
reconciler.generateEvent(obj, corev1.EventTypeWarning, "reason", "message")
reconciler.generateEvent(obj, corev1.EventTypeWarning, "reason2", "message2")

event := <-fakeRecorder.Events
g.Expect(event).To(Equal("Warning reason message"))
Expand All @@ -255,7 +255,7 @@ func TestPatcherForStaticPod(t *testing.T) {
g.Expect(err).NotTo(HaveOccurred())

// check the spcps has been added as owner to the secret
secret := &v1.Secret{}
secret := &corev1.Secret{}
err = client.Get(context.TODO(), types.NamespacedName{Name: "secret1", Namespace: "default"}, secret)
g.Expect(err).NotTo(HaveOccurred())

Expand Down Expand Up @@ -294,7 +294,7 @@ func TestPatcherForPodWithOwner(t *testing.T) {
g.Expect(err).NotTo(HaveOccurred())

// check the spcps has been added as owner to the secret
secret := &v1.Secret{}
secret := &corev1.Secret{}
err = client.Get(context.TODO(), types.NamespacedName{Name: "secret1", Namespace: "default"}, secret)
g.Expect(err).NotTo(HaveOccurred())

Expand Down
8 changes: 4 additions & 4 deletions pkg/k8s/secret.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ package k8s
import (
"fmt"

v1 "k8s.io/api/core/v1"
corev1 "k8s.io/api/core/v1"
apierrors "k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/client-go/tools/cache"
Expand All @@ -31,15 +31,15 @@ type SecretLister struct {
}

// GetWithKey returns secret with key from the informer cache
func (sl *SecretLister) GetWithKey(key string) (*v1.Secret, error) {
func (sl *SecretLister) GetWithKey(key string) (*corev1.Secret, error) {
sec, exists, err := sl.GetByKey(key)
if err != nil {
return nil, err
}
if !exists {
return nil, apierrors.NewNotFound(schema.GroupResource{Group: v1.GroupName, Resource: "secrets"}, key)
return nil, apierrors.NewNotFound(schema.GroupResource{Group: corev1.GroupName, Resource: "secrets"}, key)
}
secret, ok := sec.(*v1.Secret)
secret, ok := sec.(*corev1.Secret)
if !ok {
return nil, fmt.Errorf("failed to cast %T to %s", sec, "secret")
}
Expand Down
8 changes: 4 additions & 4 deletions pkg/k8s/store.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ import (

"sigs.k8s.io/secrets-store-csi-driver/controllers"

v1 "k8s.io/api/core/v1"
corev1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
coreInformers "k8s.io/client-go/informers/core/v1"
"k8s.io/client-go/informers/internalinterfaces"
Expand All @@ -43,7 +43,7 @@ type Lister struct {
// Store for secrets with label 'secrets-store.csi.k8s.io/used'
type Store interface {
// GetNodePublishSecretRefSecret returns the NodePublishSecretRef secret matching name and namespace
GetNodePublishSecretRefSecret(name, namespace string) (*v1.Secret, error)
GetNodePublishSecretRefSecret(name, namespace string) (*corev1.Secret, error)
// Run initializes and runs the informers
Run(stopCh <-chan struct{}) error
}
Expand Down Expand Up @@ -72,7 +72,7 @@ func (s k8sStore) Run(stopCh <-chan struct{}) error {
}

// GetNodePublishSecretRefSecret returns the NodePublishSecretRef secret matching name and namespace
func (s k8sStore) GetNodePublishSecretRefSecret(name, namespace string) (*v1.Secret, error) {
func (s k8sStore) GetNodePublishSecretRefSecret(name, namespace string) (*corev1.Secret, error) {
return s.listers.NodePublishSecretRefSecret.GetWithKey(fmt.Sprintf("%s/%s", namespace, name))
}

Expand All @@ -92,7 +92,7 @@ func (i *Informer) run(stopCh <-chan struct{}) error {
func newNodePublishSecretRefSecretInformer(kubeClient kubernetes.Interface, resyncPeriod time.Duration) cache.SharedIndexInformer {
return coreInformers.NewFilteredSecretInformer(
kubeClient,
v1.NamespaceAll,
corev1.NamespaceAll,
resyncPeriod,
cache.Indexers{},
usedFilterForSecret(),
Expand Down
4 changes: 2 additions & 2 deletions pkg/k8s/store_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import (
"sigs.k8s.io/secrets-store-csi-driver/controllers"

. "github.com/onsi/gomega"
v1 "k8s.io/api/core/v1"
corev1 "k8s.io/api/core/v1"
apierrors "k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/wait"
Expand All @@ -46,7 +46,7 @@ func TestGetNodePublishSecretRefSecret(t *testing.T) {
g.Expect(err).To(HaveOccurred())
g.Expect(apierrors.IsNotFound(err)).To(BeTrue())

secretToAdd := &v1.Secret{
secretToAdd := &corev1.Secret{
ObjectMeta: metav1.ObjectMeta{
Name: "secret1",
Namespace: "default",
Expand Down
32 changes: 16 additions & 16 deletions pkg/rotation/reconciler.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ import (
"sigs.k8s.io/secrets-store-csi-driver/pkg/util/spcpsutil"
"sigs.k8s.io/secrets-store-csi-driver/pkg/version"

v1 "k8s.io/api/core/v1"
corev1 "k8s.io/api/core/v1"
apierrors "k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
Expand Down Expand Up @@ -102,7 +102,7 @@ func NewReconciler(client client.Reader, s *runtime.Scheme, providerVolumePath,
crdClient := secretsStoreClient.NewForConfigOrDie(config)
eventBroadcaster := record.NewBroadcaster()
eventBroadcaster.StartRecordingToSink(&clientcorev1.EventSinkImpl{Interface: kubeClient.CoreV1().Events("")})
recorder := eventBroadcaster.NewRecorder(s, v1.EventSource{Component: "csi-secrets-store-rotation"})
recorder := eventBroadcaster.NewRecorder(s, corev1.EventSource{Component: "csi-secrets-store-rotation"})
secretStore, err := k8s.New(kubeClient, 5*time.Second)
if err != nil {
return nil, err
Expand Down Expand Up @@ -246,7 +246,7 @@ func (r *Reconciler) reconcile(ctx context.Context, spcps *secretsstorev1.Secret
}()

// get pod from manager's cache
pod := &v1.Pod{}
pod := &corev1.Pod{}
err = r.cache.Get(
ctx,
client.ObjectKey{
Expand All @@ -263,7 +263,7 @@ func (r *Reconciler) reconcile(ctx context.Context, spcps *secretsstorev1.Secret
// or the pod is in succeeded state (for jobs that complete aren't gc yet)
// or the pod is in a failed state (all containers get terminated).
// the spcps will be gc when the pod is deleted and will not show up in the next rotation cycle
if !pod.GetDeletionTimestamp().IsZero() || pod.Status.Phase == v1.PodSucceeded || pod.Status.Phase == v1.PodFailed {
if !pod.GetDeletionTimestamp().IsZero() || pod.Status.Phase == corev1.PodSucceeded || pod.Status.Phase == corev1.PodFailed {
klog.V(5).InfoS("pod is being terminated, skipping rotation", "pod", klog.KObj(pod))
return nil
}
Expand Down Expand Up @@ -337,7 +337,7 @@ func (r *Reconciler) reconcile(ctx context.Context, spcps *secretsstorev1.Secret
"name", nodePublishSecretRef.Name, "namespace", spcps.Namespace)
}
errorReason = internalerrors.NodePublishSecretRefNotFound
r.generateEvent(pod, v1.EventTypeWarning, mountRotationFailedReason, fmt.Sprintf("failed to get node publish secret %s/%s, err: %+v", spcps.Namespace, nodePublishSecretRef.Name, err))
r.generateEvent(pod, corev1.EventTypeWarning, mountRotationFailedReason, fmt.Sprintf("failed to get node publish secret %s/%s, err: %+v", spcps.Namespace, nodePublishSecretRef.Name, err))
return fmt.Errorf("failed to get node publish secret %s/%s, err: %+v", spcps.Namespace, nodePublishSecretRef.Name, err)
}

Expand All @@ -348,7 +348,7 @@ func (r *Reconciler) reconcile(ctx context.Context, spcps *secretsstorev1.Secret

secretsJSON, err = json.Marshal(nodePublishSecretData)
if err != nil {
r.generateEvent(pod, v1.EventTypeWarning, mountRotationFailedReason, fmt.Sprintf("failed to marshal node publish secret data, err: %+v", err))
r.generateEvent(pod, corev1.EventTypeWarning, mountRotationFailedReason, fmt.Sprintf("failed to marshal node publish secret data, err: %+v", err))
return fmt.Errorf("failed to marshal node publish secret data, err: %+v", err)
}

Expand All @@ -365,12 +365,12 @@ func (r *Reconciler) reconcile(ctx context.Context, spcps *secretsstorev1.Secret
providerClient, err := r.providerClients.Get(ctx, providerName)
if err != nil {
errorReason = internalerrors.FailedToLookupProviderGRPCClient
r.generateEvent(pod, v1.EventTypeWarning, mountRotationFailedReason, fmt.Sprintf("failed to lookup provider client: %q", providerName))
r.generateEvent(pod, corev1.EventTypeWarning, mountRotationFailedReason, fmt.Sprintf("failed to lookup provider client: %q", providerName))
return fmt.Errorf("failed to lookup provider client: %q", providerName)
}
newObjectVersions, errorReason, err := secretsstore.MountContent(ctx, providerClient, string(paramsJSON), string(secretsJSON), spcps.Status.TargetPath, string(permissionJSON), oldObjectVersions)
if err != nil {
r.generateEvent(pod, v1.EventTypeWarning, mountRotationFailedReason, fmt.Sprintf("provider mount err: %+v", err))
r.generateEvent(pod, corev1.EventTypeWarning, mountRotationFailedReason, fmt.Sprintf("provider mount err: %+v", err))
return fmt.Errorf("failed to rotate objects for pod %s/%s, err: %+v", spcps.Namespace, spcps.Status.PodName, err)
}

Expand Down Expand Up @@ -398,7 +398,7 @@ func (r *Reconciler) reconcile(ctx context.Context, spcps *secretsstorev1.Secret
// data is updated with the latest versions
if requiresUpdate {
// generate an event for successful mount update
r.generateEvent(pod, v1.EventTypeNormal, mountRotationCompleteReason, fmt.Sprintf("successfully rotated mounted contents for spc %s/%s", spc.Namespace, spc.Name))
r.generateEvent(pod, corev1.EventTypeNormal, mountRotationCompleteReason, fmt.Sprintf("successfully rotated mounted contents for spc %s/%s", spc.Namespace, spc.Name))
klog.InfoS("updating versions in spc pod status", "spcps", klog.KObj(spcps), "controller", "rotation")

var ov []secretsstorev1.SecretProviderClassObject
Expand All @@ -423,7 +423,7 @@ func (r *Reconciler) reconcile(ctx context.Context, spcps *secretsstorev1.Secret
Factor: 1.0,
Jitter: 0.1,
}, updateFn); err != nil {
r.generateEvent(pod, v1.EventTypeWarning, mountRotationFailedReason, fmt.Sprintf("failed to update versions in spc pod status %s, err: %+v", spc.Name, err))
r.generateEvent(pod, corev1.EventTypeWarning, mountRotationFailedReason, fmt.Sprintf("failed to update versions in spc pod status %s, err: %+v", spc.Name, err))
return fmt.Errorf("failed to update spc pod status, err: %+v", err)
}
}
Expand All @@ -434,14 +434,14 @@ func (r *Reconciler) reconcile(ctx context.Context, spcps *secretsstorev1.Secret
}
files, err := fileutil.GetMountedFiles(spcps.Status.TargetPath)
if err != nil {
r.generateEvent(pod, v1.EventTypeWarning, k8sSecretRotationFailedReason, fmt.Sprintf("failed to get mounted files, err: %+v", err))
r.generateEvent(pod, corev1.EventTypeWarning, k8sSecretRotationFailedReason, fmt.Sprintf("failed to get mounted files, err: %+v", err))
return fmt.Errorf("failed to get mounted files, err: %+v", err)
}
for _, secretObj := range spc.Spec.SecretObjects {
secretName := strings.TrimSpace(secretObj.SecretName)

if err = secretutil.ValidateSecretObject(*secretObj); err != nil {
r.generateEvent(pod, v1.EventTypeWarning, k8sSecretRotationFailedReason, fmt.Sprintf("failed validation for secret object in spc %s/%s, err: %+v", spc.Namespace, spc.Name, err))
r.generateEvent(pod, corev1.EventTypeWarning, k8sSecretRotationFailedReason, fmt.Sprintf("failed validation for secret object in spc %s/%s, err: %+v", spc.Namespace, spc.Name, err))
klog.ErrorS(err, "failed validation for secret object in spc", "spc", klog.KObj(spc), "controller", "rotation")
errs = append(errs, err)
continue
Expand All @@ -450,7 +450,7 @@ func (r *Reconciler) reconcile(ctx context.Context, spcps *secretsstorev1.Secret
secretType := secretutil.GetSecretType(strings.TrimSpace(secretObj.Type))
var datamap map[string][]byte
if datamap, err = secretutil.GetSecretData(secretObj.Data, secretType, files); err != nil {
r.generateEvent(pod, v1.EventTypeWarning, k8sSecretRotationFailedReason, fmt.Sprintf("failed to get data in spc %s/%s for secret %s, err: %+v", spc.Namespace, spc.Name, secretName, err))
r.generateEvent(pod, corev1.EventTypeWarning, k8sSecretRotationFailedReason, fmt.Sprintf("failed to get data in spc %s/%s for secret %s, err: %+v", spc.Namespace, spc.Name, secretName, err))
klog.ErrorS(err, "failed to get data in spc for secret", "spc", klog.KObj(spc), "secret", klog.ObjectRef{Namespace: spc.Namespace, Name: secretName}, "controller", "rotation")
errs = append(errs, err)
continue
Expand All @@ -476,12 +476,12 @@ func (r *Reconciler) reconcile(ctx context.Context, spcps *secretsstorev1.Secret
Factor: 1.0,
Jitter: 0.1,
}, patchFn); err != nil {
r.generateEvent(pod, v1.EventTypeWarning, k8sSecretRotationFailedReason, fmt.Sprintf("failed to patch secret %s with new data, err: %+v", secretName, err))
r.generateEvent(pod, corev1.EventTypeWarning, k8sSecretRotationFailedReason, fmt.Sprintf("failed to patch secret %s with new data, err: %+v", secretName, err))
// continue to ensure error in a single secret doesn't block the updates
// for all other secret objects defined in SPC
continue
}
r.generateEvent(pod, v1.EventTypeNormal, k8sSecretRotationCompleteReason, fmt.Sprintf("successfully rotated K8s secret %s", secretName))
r.generateEvent(pod, corev1.EventTypeNormal, k8sSecretRotationCompleteReason, fmt.Sprintf("successfully rotated K8s secret %s", secretName))
}

// for errors with individual secret objects in spc, we continue to the next secret object
Expand All @@ -504,7 +504,7 @@ func (r *Reconciler) updateSecretProviderClassPodStatus(ctx context.Context, spc

// patchSecret patches secret with the new data and returns error if any
func (r *Reconciler) patchSecret(ctx context.Context, name, namespace string, data map[string][]byte) error {
secret := &v1.Secret{}
secret := &corev1.Secret{}
err := r.cache.Get(
ctx,
client.ObjectKey{
Expand Down

0 comments on commit e1f143c

Please sign in to comment.