From 5df8e05d1a858556081b7448b4273fc02f722702 Mon Sep 17 00:00:00 2001 From: Michael Bridgen Date: Tue, 26 Jan 2021 17:37:37 +0000 Subject: [PATCH] Give image repository a cert-secret-ref flag ImageRepository objects can now refer to a secret containing certificates to use for TLS. This adds the flag flux create image repository --cert-secret-ref for naming a secret to use. You can create such a secret with flux create secret tls Signed-off-by: Michael Bridgen --- cmd/flux/create_image_repository.go | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/cmd/flux/create_image_repository.go b/cmd/flux/create_image_repository.go index d7f32cbd..36357871 100644 --- a/cmd/flux/create_image_repository.go +++ b/cmd/flux/create_image_repository.go @@ -38,9 +38,10 @@ An ImageRepository object specifies an image repository to scan.`, } type imageRepoFlags struct { - image string - secretRef string - timeout time.Duration + image string + secretRef string + certSecretRef string + timeout time.Duration } var imageRepoArgs = imageRepoFlags{} @@ -49,6 +50,7 @@ func init() { flags := createImageRepositoryCmd.Flags() flags.StringVar(&imageRepoArgs.image, "image", "", "the image repository to scan; e.g., library/alpine") flags.StringVar(&imageRepoArgs.secretRef, "secret-ref", "", "the name of a docker-registry secret to use for credentials") + flags.StringVar(&imageRepoArgs.certSecretRef, "cert-ref", "", "the name of a secret to use for TLS certificates") // NB there is already a --timeout in the global flags, for // controlling timeout on operations while e.g., creating objects. flags.DurationVar(&imageRepoArgs.timeout, "scan-timeout", 0, "a timeout for scanning; this defaults to the interval if not set") @@ -94,6 +96,11 @@ func createImageRepositoryRun(cmd *cobra.Command, args []string) error { Name: imageRepoArgs.secretRef, } } + if imageRepoArgs.certSecretRef != "" { + repo.Spec.CertSecretRef = &meta.LocalObjectReference{ + Name: imageRepoArgs.certSecretRef, + } + } if createArgs.export { return printExport(exportImageRepository(&repo))