From cfc4ebf3081e7a271b0373cee304926dc603ffb6 Mon Sep 17 00:00:00 2001 From: Dimitris Karakasilis Date: Thu, 15 Dec 2022 12:29:49 +0200 Subject: [PATCH] Un-hardcode the copier image Signed-off-by: Dimitris Karakasilis --- controllers/job.go | 5 +---- controllers/osartifact_controller.go | 10 +++++----- main.go | 5 ++++- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/controllers/job.go b/controllers/job.go index 231d0f5..411418a 100644 --- a/controllers/job.go +++ b/controllers/job.go @@ -326,7 +326,6 @@ func (r *OSArtifactReconciler) genJob(artifact buildv1alpha1.OSArtifact) *batchv pod.InitContainers = append(pod.InitContainers, buildGCECloudImageContainer) } - // TODO: Shell out to `kubectl cp`? Why not? // TODO: Does it make sense to build the image and not push it? Maybe remove // this flag? if pushImage { @@ -334,9 +333,7 @@ func (r *OSArtifactReconciler) genJob(artifact buildv1alpha1.OSArtifact) *batchv } pod.Containers = []v1.Container{ - // TODO: Add kubectl to osbuilder-tools? - //createPushToServerImageContainer(r.ToolImage), - createPushToServerImageContainer("bitnami/kubectl", r.ArtifactPodInfo), + createPushToServerImageContainer(r.CopierImage, r.ArtifactPodInfo), } jobLabels := genJobLabel(artifact.Name) diff --git a/controllers/osartifact_controller.go b/controllers/osartifact_controller.go index 5cd1e09..bdeab87 100644 --- a/controllers/osartifact_controller.go +++ b/controllers/osartifact_controller.go @@ -48,11 +48,11 @@ type ArtifactPodInfo struct { // OSArtifactReconciler reconciles a OSArtifact object type OSArtifactReconciler struct { client.Client - Scheme *runtime.Scheme - restConfig *rest.Config - clientSet *kubernetes.Clientset - ServingImage, ToolImage string - ArtifactPodInfo ArtifactPodInfo + Scheme *runtime.Scheme + restConfig *rest.Config + clientSet *kubernetes.Clientset + ServingImage, ToolImage, CopierImage string + ArtifactPodInfo ArtifactPodInfo } func genObjectMeta(artifact buildv1alpha1.OSArtifact) metav1.ObjectMeta { diff --git a/main.go b/main.go index ab33883..1bc3c37 100644 --- a/main.go +++ b/main.go @@ -52,10 +52,12 @@ func main() { var metricsAddr string var enableLeaderElection bool var probeAddr string - var serveImage, toolImage string + var serveImage, toolImage, copierImage string var copyToPodLabel, copyToNamespace, copyToPath, copierRole string flag.StringVar(&metricsAddr, "metrics-bind-address", ":8080", "The address the metric endpoint binds to.") + + flag.StringVar(&copierImage, "copier-image", "quay.io/kairos/kubectl", "The image that is used to copy artifacts to the server pod.") flag.StringVar(&serveImage, "serve-image", "nginx", "Serve image.") // It needs luet inside flag.StringVar(&toolImage, "tool-image", "quay.io/kairos/osbuilder-tools:latest", "Tool image.") @@ -106,6 +108,7 @@ func main() { Client: mgr.GetClient(), ServingImage: serveImage, ToolImage: toolImage, + CopierImage: copierImage, ArtifactPodInfo: controllers.ArtifactPodInfo{ Label: copyToPodLabel, Namespace: copyToNamespace,