From b42ffefdcea2afc63a8a9f4f5ad02134872e807b Mon Sep 17 00:00:00 2001 From: Lukasz Raczylo Date: Fri, 10 Jan 2025 17:15:13 +0000 Subject: [PATCH] fixup! Add packaged charts --- charts/kube-images-sync-operator/Chart.yaml | 4 +- .../templates/clusterimage-crd.yaml | 48 ++++++++----------- .../templates/clusterimageexport-crd.yaml | 12 +++++ .../templates/impex-mgr-rbac.yaml | 10 ++++ charts/kube-images-sync-operator/values.yaml | 2 +- index.yaml | 22 ++++++++- 6 files changed, 66 insertions(+), 32 deletions(-) diff --git a/charts/kube-images-sync-operator/Chart.yaml b/charts/kube-images-sync-operator/Chart.yaml index ba66fea..b6d6be6 100644 --- a/charts/kube-images-sync-operator/Chart.yaml +++ b/charts/kube-images-sync-operator/Chart.yaml @@ -10,9 +10,9 @@ description: | type: application -version: 0.2.44 +version: 0.4.1 -appVersion: "0.2.44" +appVersion: "0.4.1" home: https://github.com/lukaszraczylo/kubernetes-images-sync-operator diff --git a/charts/kube-images-sync-operator/templates/clusterimage-crd.yaml b/charts/kube-images-sync-operator/templates/clusterimage-crd.yaml index b8237dd..ad31e13 100644 --- a/charts/kube-images-sync-operator/templates/clusterimage-crd.yaml +++ b/charts/kube-images-sync-operator/templates/clusterimage-crd.yaml @@ -16,30 +16,21 @@ spec: scope: Namespaced versions: - additionalPrinterColumns: - - jsonPath: .spec.exportName - name: Ref - type: string - jsonPath: .spec.image name: Image type: string - - jsonPath: .spec.tag - name: Tag - type: string - - jsonPath: .spec.sha - name: SHA - type: string - jsonPath: .spec.storage name: Storage type: string - jsonPath: .spec.exportPath name: Path type: string - - jsonPath: .status.progress - name: Progress - type: string - - jsonPath: .status.retryCount - name: Retries + - jsonPath: .status.versionCount + name: Versions type: integer + - jsonPath: .status.lastUpdated + name: Last Updated + type: date - jsonPath: .metadata.creationTimestamp name: Age type: date @@ -68,17 +59,19 @@ spec: spec: description: ClusterImageSpec defines the desired state of ClusterImage properties: - exportName: - type: string exportPath: - type: string - fullName: + description: ExportPath defines the base path where images will be stored type: string image: + description: Image is the base name of the container image without tag/sha type: string imageNamespace: + description: ImageNamespace defines the namespace where the image is + located type: string imagePullSecrets: + description: ImagePullSecrets are references to secrets to use for pulling + images items: description: |- LocalObjectReference contains enough information to let you locate the @@ -99,24 +92,23 @@ spec: jobAnnotations: additionalProperties: type: string + description: JobAnnotations are optional annotations to add to export + jobs type: object - sha: - type: string storage: + description: Storage defines where the image should be stored type: string - tag: - type: string - required: - - exportName type: object status: description: ClusterImageStatus defines the observed state of ClusterImage properties: - progress: + lastUpdated: + description: LastUpdated is when the last version was added/updated + format: date-time type: string - retryCount: - default: 0 - description: default value is 0 + versionCount: + description: VersionCount is the number of versions tracked for this + image type: integer type: object type: object diff --git a/charts/kube-images-sync-operator/templates/clusterimageexport-crd.yaml b/charts/kube-images-sync-operator/templates/clusterimageexport-crd.yaml index 4b98bd9..562a97d 100644 --- a/charts/kube-images-sync-operator/templates/clusterimageexport-crd.yaml +++ b/charts/kube-images-sync-operator/templates/clusterimageexport-crd.yaml @@ -25,6 +25,12 @@ spec: - jsonPath: .status.progress name: Progress type: string + - jsonPath: .status.completedImages + name: Images + type: string + - jsonPath: .status.totalImages + name: Total + type: string - jsonPath: .metadata.creationTimestamp name: Age type: date @@ -159,8 +165,14 @@ spec: status: description: ClusterImageExportStatus defines the observed state of ClusterImageExport properties: + completedImages: + description: Number of images that have completed export + type: integer progress: type: string + totalImages: + description: Total number of images to be exported + type: integer type: object type: object served: true diff --git a/charts/kube-images-sync-operator/templates/impex-mgr-rbac.yaml b/charts/kube-images-sync-operator/templates/impex-mgr-rbac.yaml index a40a611..443522f 100644 --- a/charts/kube-images-sync-operator/templates/impex-mgr-rbac.yaml +++ b/charts/kube-images-sync-operator/templates/impex-mgr-rbac.yaml @@ -5,6 +5,13 @@ metadata: labels: {{- include "chart.labels" . | nindent 4 }} rules: +- apiGroups: + - "" + resources: + - events + verbs: + - create + - patch - apiGroups: - "" resources: @@ -50,6 +57,7 @@ rules: - raczylo.com resources: - '*' + - clusterimageversions verbs: - create - delete @@ -62,12 +70,14 @@ rules: - raczylo.com resources: - '*/finalizers' + - clusterimageversions/finalizers verbs: - update - apiGroups: - raczylo.com resources: - '*/status' + - clusterimageversions/status verbs: - get - patch diff --git a/charts/kube-images-sync-operator/values.yaml b/charts/kube-images-sync-operator/values.yaml index 8142d7b..d876a30 100644 --- a/charts/kube-images-sync-operator/values.yaml +++ b/charts/kube-images-sync-operator/values.yaml @@ -12,7 +12,7 @@ sa: - ALL image: repository: ghcr.io/lukaszraczylo/kubernetes-images-sync-operator - tag: 0.2.44 + tag: 0.4.1 resources: limits: cpu: 500m diff --git a/index.yaml b/index.yaml index 97e67c2..0f3ba1b 100644 --- a/index.yaml +++ b/index.yaml @@ -92,6 +92,26 @@ entries: - https://github.com/lukaszraczylo/helm-charts/releases/download/jobs-manager-0.0.24/jobs-manager-0.0.24.tgz version: 0.0.24 kube-images-sync: + - apiVersion: v2 + appVersion: 0.4.1 + created: "2025-01-10T17:14:03.881141Z" + description: 'A Helm chart for Kubernetes Images Sync Operator. Kubernetes Images + Sync Operator is responsible for backing up and restoring images from a Kubernetes + cluster. It''s ultimate goal is to provide synchonization of images between + multiple environments, quite often air-gapped. It compiles the list of images + currently present in the cluster and uploads them to the specified storage. + Whenever new CRD is created - it will try to figure out which images were already + uploaded and which are new and upload only the new ones to avoid repetition. ' + digest: aed3bf38078744657b0bccd8033abdfd9c6d61f641b367640dbc23b355367e48 + home: https://github.com/lukaszraczylo/kubernetes-images-sync-operator + maintainers: + - email: github-enquiries@raczylo.com + name: lukaszraczylo + name: kube-images-sync + type: application + urls: + - https://github.com/lukaszraczylo/helm-charts/releases/download/kube-images-sync-0.4.1/kube-images-sync-0.4.1.tgz + version: 0.4.1 - apiVersion: v2 appVersion: 0.2.44 created: "2025-01-10T15:53:39.187162Z" @@ -892,4 +912,4 @@ entries: urls: - https://github.com/lukaszraczylo/helm-charts/releases/download/kube-images-sync-0.1.5/kube-images-sync-0.1.5.tgz version: 0.1.5 -generated: "2025-01-10T15:53:39.188206Z" +generated: "2025-01-10T17:14:03.881872Z"