--- apiVersion: batch/v1 items: - apiVersion: batch/v1 kind: CronJob metadata: annotations: imageregistry.operator.openshift.io/checksum: sha256:46e14d7e9bfec27d2d0271186799e290628d872c7686853829c8965e97fdcfc7 creationTimestamp: "2025-10-11T10:28:50Z" generation: 1 managedFields: - apiVersion: batch/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:imageregistry.operator.openshift.io/checksum: {} f:spec: f:concurrencyPolicy: {} f:failedJobsHistoryLimit: {} f:jobTemplate: f:metadata: f:annotations: .: {} f:openshift.io/required-scc: {} f:labels: .: {} f:created-by: {} f:spec: f:backoffLimit: {} f:template: f:spec: f:affinity: {} f:containers: k:{"name":"image-pruner"}: .: {} f:args: {} f:command: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: .: {} f:requests: .: {} f:cpu: {} f:memory: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/var/run/configmaps/serviceca"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:dnsPolicy: {} f:priorityClassName: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"serviceca"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} f:schedule: {} f:startingDeadlineSeconds: {} f:successfulJobsHistoryLimit: {} f:suspend: {} manager: cluster-image-registry-operator operation: Update time: "2025-10-11T10:28:50Z" name: image-pruner namespace: openshift-image-registry resourceVersion: "7539" uid: 2c7d3e75-de85-4a32-aeb0-5b9473406c77 spec: concurrencyPolicy: Forbid failedJobsHistoryLimit: 3 jobTemplate: metadata: annotations: openshift.io/required-scc: restricted-v2 creationTimestamp: null labels: created-by: image-pruner spec: backoffLimit: 0 template: metadata: creationTimestamp: null spec: affinity: {} containers: - args: - -c - | set -eu "$@" && exit for i in 1 2 3 4 5; do echo "attempt #$i has failed (exit code $?), going to make another attempt..." >&2 sleep $(($i * 30)) "$@" && break # this is the last command of the script, so its last failure will be exit code of the script done - arg0 - oc - adm - prune - images - --confirm=true - --certificate-authority=/var/run/configmaps/serviceca/service-ca.crt - --keep-tag-revisions=3 - --keep-younger-than=60m - --ignore-invalid-refs=true - --loglevel=1 - --prune-registry=false command: - /bin/sh image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:c1bf279b80440264700aa5e7b186b74a9ca45bd6a14638beb3ee5df0e610086a imagePullPolicy: IfNotPresent name: image-pruner resources: requests: cpu: 100m memory: 256Mi terminationMessagePath: /dev/termination-log terminationMessagePolicy: FallbackToLogsOnError volumeMounts: - mountPath: /var/run/configmaps/serviceca name: serviceca readOnly: true dnsPolicy: ClusterFirst priorityClassName: system-cluster-critical restartPolicy: Never schedulerName: default-scheduler securityContext: {} serviceAccount: pruner serviceAccountName: pruner terminationGracePeriodSeconds: 30 volumes: - configMap: defaultMode: 420 name: serviceca name: serviceca schedule: 0 0 * * * startingDeadlineSeconds: 3600 successfulJobsHistoryLimit: 3 suspend: false status: {} kind: CronJobList metadata: resourceVersion: "64411"