---
apiVersion: batch/v1
items:
- apiVersion: batch/v1
  kind: Job
  metadata:
    annotations:
      batch.kubernetes.io/cronjob-scheduled-timestamp: "2025-10-28T00:00:00Z"
      openshift.io/required-scc: restricted-v2
    creationTimestamp: "2025-10-28T00:00:00Z"
    generation: 1
    labels:
      created-by: image-pruner
    managedFields:
    - apiVersion: batch/v1
      fieldsType: FieldsV1
      fieldsV1:
        f:metadata:
          f:annotations:
            .: {}
            f:batch.kubernetes.io/cronjob-scheduled-timestamp: {}
            f:openshift.io/required-scc: {}
          f:labels:
            .: {}
            f:created-by: {}
          f:ownerReferences:
            .: {}
            k:{"uid":"04620d9e-3230-46af-8a72-295e02e95a86"}: {}
        f:spec:
          f:backoffLimit: {}
          f:completionMode: {}
          f:completions: {}
          f:manualSelector: {}
          f:parallelism: {}
          f:podReplacementPolicy: {}
          f:suspend: {}
          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: {}
      manager: kube-controller-manager
      operation: Update
      time: "2025-10-28T00:00:00Z"
    - apiVersion: batch/v1
      fieldsType: FieldsV1
      fieldsV1:
        f:status:
          f:completionTime: {}
          f:conditions: {}
          f:ready: {}
          f:startTime: {}
          f:succeeded: {}
          f:terminating: {}
          f:uncountedTerminatedPods: {}
      manager: kube-controller-manager
      operation: Update
      subresource: status
      time: "2025-10-28T00:00:06Z"
    name: image-pruner-29360160
    namespace: openshift-image-registry
    ownerReferences:
    - apiVersion: batch/v1
      blockOwnerDeletion: true
      controller: true
      kind: CronJob
      name: image-pruner
      uid: 04620d9e-3230-46af-8a72-295e02e95a86
    resourceVersion: "493794"
    uid: 32b8f71e-db08-4875-ac61-e0e7c16b1cce
  spec:
    backoffLimit: 0
    completionMode: NonIndexed
    completions: 1
    manualSelector: false
    parallelism: 1
    podReplacementPolicy: TerminatingOrFailed
    selector:
      matchLabels:
        batch.kubernetes.io/controller-uid: 32b8f71e-db08-4875-ac61-e0e7c16b1cce
    suspend: false
    template:
      metadata:
        creationTimestamp: null
        labels:
          batch.kubernetes.io/controller-uid: 32b8f71e-db08-4875-ac61-e0e7c16b1cce
          batch.kubernetes.io/job-name: image-pruner-29360160
          controller-uid: 32b8f71e-db08-4875-ac61-e0e7c16b1cce
          job-name: image-pruner-29360160
      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:f30d55c995a8bd14440660fd0d6734f52066597da980e35f65aa967737995027
          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
  status:
    completionTime: "2025-10-28T00:00:06Z"
    conditions:
    - lastProbeTime: "2025-10-28T00:00:06Z"
      lastTransitionTime: "2025-10-28T00:00:06Z"
      message: Reached expected number of succeeded pods
      reason: CompletionsReached
      status: "True"
      type: SuccessCriteriaMet
    - lastProbeTime: "2025-10-28T00:00:06Z"
      lastTransitionTime: "2025-10-28T00:00:06Z"
      message: Reached expected number of succeeded pods
      reason: CompletionsReached
      status: "True"
      type: Complete
    ready: 0
    startTime: "2025-10-28T00:00:00Z"
    succeeded: 1
    terminating: 0
    uncountedTerminatedPods: {}
- apiVersion: batch/v1
  kind: Job
  metadata:
    annotations:
      batch.kubernetes.io/cronjob-scheduled-timestamp: "2025-10-29T00:00:00Z"
      openshift.io/required-scc: restricted-v2
    creationTimestamp: "2025-10-29T00:00:00Z"
    generation: 1
    labels:
      created-by: image-pruner
    managedFields:
    - apiVersion: batch/v1
      fieldsType: FieldsV1
      fieldsV1:
        f:metadata:
          f:annotations:
            .: {}
            f:batch.kubernetes.io/cronjob-scheduled-timestamp: {}
            f:openshift.io/required-scc: {}
          f:labels:
            .: {}
            f:created-by: {}
          f:ownerReferences:
            .: {}
            k:{"uid":"04620d9e-3230-46af-8a72-295e02e95a86"}: {}
        f:spec:
          f:backoffLimit: {}
          f:completionMode: {}
          f:completions: {}
          f:manualSelector: {}
          f:parallelism: {}
          f:podReplacementPolicy: {}
          f:suspend: {}
          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: {}
      manager: kube-controller-manager
      operation: Update
      time: "2025-10-29T00:00:00Z"
    - apiVersion: batch/v1
      fieldsType: FieldsV1
      fieldsV1:
        f:status:
          f:completionTime: {}
          f:conditions: {}
          f:ready: {}
          f:startTime: {}
          f:succeeded: {}
          f:terminating: {}
          f:uncountedTerminatedPods: {}
      manager: kube-controller-manager
      operation: Update
      subresource: status
      time: "2025-10-29T00:00:06Z"
    name: image-pruner-29361600
    namespace: openshift-image-registry
    ownerReferences:
    - apiVersion: batch/v1
      blockOwnerDeletion: true
      controller: true
      kind: CronJob
      name: image-pruner
      uid: 04620d9e-3230-46af-8a72-295e02e95a86
    resourceVersion: "1572448"
    uid: d2d2ef96-00b6-4bac-b4d3-25bea17d99ce
  spec:
    backoffLimit: 0
    completionMode: NonIndexed
    completions: 1
    manualSelector: false
    parallelism: 1
    podReplacementPolicy: TerminatingOrFailed
    selector:
      matchLabels:
        batch.kubernetes.io/controller-uid: d2d2ef96-00b6-4bac-b4d3-25bea17d99ce
    suspend: false
    template:
      metadata:
        creationTimestamp: null
        labels:
          batch.kubernetes.io/controller-uid: d2d2ef96-00b6-4bac-b4d3-25bea17d99ce
          batch.kubernetes.io/job-name: image-pruner-29361600
          controller-uid: d2d2ef96-00b6-4bac-b4d3-25bea17d99ce
          job-name: image-pruner-29361600
      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:f30d55c995a8bd14440660fd0d6734f52066597da980e35f65aa967737995027
          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
  status:
    completionTime: "2025-10-29T00:00:06Z"
    conditions:
    - lastProbeTime: "2025-10-29T00:00:06Z"
      lastTransitionTime: "2025-10-29T00:00:06Z"
      message: Reached expected number of succeeded pods
      reason: CompletionsReached
      status: "True"
      type: SuccessCriteriaMet
    - lastProbeTime: "2025-10-29T00:00:06Z"
      lastTransitionTime: "2025-10-29T00:00:06Z"
      message: Reached expected number of succeeded pods
      reason: CompletionsReached
      status: "True"
      type: Complete
    ready: 0
    startTime: "2025-10-29T00:00:00Z"
    succeeded: 1
    terminating: 0
    uncountedTerminatedPods: {}
kind: JobList
metadata:
  resourceVersion: "2219772"
