github.com/kotalco/kotal@v0.3.0/controllers/shared/secret.go (about)

     1  package shared
     2  
     3  import (
     4  	"context"
     5  
     6  	"sigs.k8s.io/controller-runtime/pkg/client"
     7  
     8  	corev1 "k8s.io/api/core/v1"
     9  	"k8s.io/apimachinery/pkg/types"
    10  )
    11  
    12  // GetSecret returns k8s secret stored at key
    13  func GetSecret(ctx context.Context, client client.Client, name types.NamespacedName, key string) (value string, err error) {
    14  	secret := &corev1.Secret{}
    15  
    16  	if err = client.Get(ctx, name, secret); err != nil {
    17  		return
    18  	}
    19  
    20  	value = string(secret.Data[key])
    21  
    22  	return
    23  }