mirror of
https://github.com/1Password/onepassword-operator.git
synced 2025-10-21 23:18:06 +00:00
27 lines
1.2 KiB
Go
27 lines
1.2 KiB
Go
package onepassword
|
|
|
|
import (
|
|
appsv1 "k8s.io/api/apps/v1"
|
|
corev1 "k8s.io/api/core/v1"
|
|
)
|
|
|
|
func IsDeploymentUsingSecrets(deployment *appsv1.Deployment, secrets map[string]*corev1.Secret) bool {
|
|
volumes := deployment.Spec.Template.Spec.Volumes
|
|
containers := deployment.Spec.Template.Spec.Containers
|
|
containers = append(containers, deployment.Spec.Template.Spec.InitContainers...)
|
|
return AreAnnotationsUsingSecrets(deployment.Annotations, secrets) || AreContainersUsingSecrets(containers, secrets) || AreVolumesUsingSecrets(volumes, secrets)
|
|
}
|
|
|
|
func GetUpdatedSecretsForDeployment(deployment *appsv1.Deployment, secrets map[string]*corev1.Secret) map[string]*corev1.Secret {
|
|
volumes := deployment.Spec.Template.Spec.Volumes
|
|
containers := deployment.Spec.Template.Spec.Containers
|
|
containers = append(containers, deployment.Spec.Template.Spec.InitContainers...)
|
|
|
|
updatedSecretsForDeployment := map[string]*corev1.Secret{}
|
|
AppendAnnotationUpdatedSecret(deployment.Annotations, secrets, updatedSecretsForDeployment)
|
|
AppendUpdatedContainerSecrets(containers, secrets, updatedSecretsForDeployment)
|
|
AppendUpdatedVolumeSecrets(volumes, secrets, updatedSecretsForDeployment)
|
|
|
|
return updatedSecretsForDeployment
|
|
}
|