constant secret name

This commit is contained in:
kkb0318
2024-04-13 20:12:39 +09:00
parent 612ca31cdf
commit dcc01e17bd
6 changed files with 32 additions and 12 deletions
+3 -3
View File
@@ -138,9 +138,9 @@ func (a *AwsS3Client) DeleteBucket(ctx context.Context) error {
// DeleteObjects removes a list of objects from a specified bucket.
func (a *AwsS3Client) DeleteObjects(ctx context.Context, objectKeys []string) error {
var objectIds []types.ObjectIdentifier
for _, key := range objectKeys {
objectIds = append(objectIds, types.ObjectIdentifier{Key: aws.String(key)})
objectIds := make([]types.ObjectIdentifier, len(objectKeys))
for i, key := range objectKeys {
objectIds[i] = types.ObjectIdentifier{Key: aws.String(key)}
}
_, err := a.Client.DeleteObjects(ctx, &s3.DeleteObjectsInput{
Bucket: aws.String(a.bucketName),
+3 -2
View File
@@ -46,6 +46,7 @@ type IRSASetupReconciler struct {
//+kubebuilder:rbac:groups=irsa.kkb0318.github.io,resources=irsasetups,verbs=get;list;watch;create;update;patch;delete
//+kubebuilder:rbac:groups=irsa.kkb0318.github.io,resources=irsasetups/status,verbs=get;update;patch
//+kubebuilder:rbac:groups=irsa.kkb0318.github.io,resources=irsasetups/finalizers,verbs=update
//+kubebuilder:rbac:groups="",resources=secrets,verbs=get;list;watch;create;update;patch;delete
// Reconcile is part of the main kubernetes reconciliation loop which aims to
// move the current state of the cluster closer to the desired state.
@@ -102,7 +103,7 @@ func (r *IRSASetupReconciler) reconcileDelete(ctx context.Context, obj *irsav1al
if err != nil {
return err
}
secret, err := manifests.NewSecretBuilder().Build("name", "default") // TODO:
secret, err := manifests.NewSecretBuilder().Build(manifests.SshKeyNamespacedName())
if err != nil {
return err
}
@@ -132,7 +133,7 @@ func reconcileSelfhosted(ctx context.Context, obj *irsav1alpha1.IRSASetup, awsCl
if err != nil {
return err
}
secret, err := manifests.NewSecretBuilder().WithSSHKey(*keyPair).Build("name", "default") // TODO:
secret, err := manifests.NewSecretBuilder().WithSSHKey(*keyPair).Build(manifests.SshKeyNamespacedName())
if err != nil {
return err
}
@@ -76,7 +76,7 @@ var _ = Describe("IRSASetup Controller", func() {
awsClient := newMockAwsClient()
expected := []types.NamespacedName{
// TODO:
{Name: "name", Namespace: "default"},
{Name: "irsa-manager-key", Namespace: "kube-system"},
}
By("Reconciling the created resource")
+2 -3
View File
@@ -5,7 +5,6 @@ import (
)
type KubernetesClient struct {
client client.Client
owner Owner
cleanup bool
client client.Client
owner Owner
}
+11 -3
View File
@@ -4,8 +4,16 @@ import (
"github.com/kkb0318/irsa-manager/internal/selfhosted"
corev1 "k8s.io/api/core/v1"
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/types"
)
func SshKeyNamespacedName() types.NamespacedName {
return types.NamespacedName{
Namespace: "kube-system",
Name: "irsa-manager-key",
}
}
type SecretBuilder struct {
data map[string][]byte
secretType corev1.SecretType
@@ -26,11 +34,11 @@ func (b *SecretBuilder) WithSSHKey(keyPair selfhosted.KeyPair) *SecretBuilder {
return b
}
func (b *SecretBuilder) Build(name, ns string) (*corev1.Secret, error) {
func (b *SecretBuilder) Build(namespacedName types.NamespacedName) (*corev1.Secret, error) {
secret := &corev1.Secret{
ObjectMeta: v1.ObjectMeta{
Name: name,
Namespace: ns,
Name: namespacedName.Name,
Namespace: namespacedName.Namespace,
},
TypeMeta: v1.TypeMeta{
APIVersion: corev1.SchemeGroupVersion.String(),