--- apiVersion: batch/v1 items: - apiVersion: batch/v1 kind: Job metadata: annotations: kubectl.kubernetes.io/last-applied-configuration: | {"apiVersion":"batch/v1","kind":"Job","metadata":{"annotations":{},"name":"s3-init","namespace":"kserve"},"spec":{"backoffLimit":3,"template":{"spec":{"containers":[{"command":["/bin/sh","-c","aws s3 mb s3://logger-output || true\naws s3 mb s3://example-models || true\ncurl -L https://storage.googleapis.com/kfserving-examples/models/sklearn/1.0/model/model.joblib -o /tmp/sklearn-model.joblib\naws s3 cp /tmp/sklearn-model.joblib s3://example-models/sklearn/model.joblib --no-verify-ssl\n"],"env":[{"name":"AWS_ACCESS_KEY_ID","valueFrom":{"secretKeyRef":{"key":"accesskey","name":"mlpipeline-s3-artifact"}}},{"name":"AWS_SECRET_ACCESS_KEY","valueFrom":{"secretKeyRef":{"key":"secretkey","name":"mlpipeline-s3-artifact"}}},{"name":"AWS_DEFAULT_REGION","value":"us-east-1"},{"name":"AWS_ENDPOINT_URL_S3","value":"http://s3-service.kserve:8333"}],"image":"docker.io/amazon/aws-cli:2.33.11@sha256:88ea087837da1b31a3afeeb4538888244a3087a867ddb1909848643fcc4b324e","name":"s3-init"}],"restartPolicy":"Never"}}}} creationTimestamp: "2026-03-18T16:53:24Z" generation: 1 labels: batch.kubernetes.io/controller-uid: 03a8addc-e4a8-4809-8740-7d066ae754e7 batch.kubernetes.io/job-name: s3-init controller-uid: 03a8addc-e4a8-4809-8740-7d066ae754e7 job-name: s3-init managedFields: - apiVersion: batch/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:kubectl.kubernetes.io/last-applied-configuration: {} f:spec: f:backoffLimit: {} f:completionMode: {} f:completions: {} f:manualSelector: {} f:parallelism: {} f:podReplacementPolicy: {} f:suspend: {} f:template: f:spec: f:containers: k:{"name":"s3-init"}: .: {} f:command: {} f:env: .: {} k:{"name":"AWS_ACCESS_KEY_ID"}: .: {} f:name: {} f:valueFrom: .: {} f:secretKeyRef: {} k:{"name":"AWS_DEFAULT_REGION"}: .: {} f:name: {} f:value: {} k:{"name":"AWS_ENDPOINT_URL_S3"}: .: {} f:name: {} f:value: {} k:{"name":"AWS_SECRET_ACCESS_KEY"}: .: {} f:name: {} f:valueFrom: .: {} f:secretKeyRef: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:dnsPolicy: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: {} f:terminationGracePeriodSeconds: {} manager: kubectl-client-side-apply operation: Update time: "2026-03-18T16:53:24Z" - 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: "2026-03-18T16:53:35Z" name: s3-init namespace: kserve resourceVersion: "13354" uid: 03a8addc-e4a8-4809-8740-7d066ae754e7 spec: backoffLimit: 3 completionMode: NonIndexed completions: 1 manualSelector: false parallelism: 1 podReplacementPolicy: TerminatingOrFailed selector: matchLabels: batch.kubernetes.io/controller-uid: 03a8addc-e4a8-4809-8740-7d066ae754e7 suspend: false template: metadata: creationTimestamp: null labels: batch.kubernetes.io/controller-uid: 03a8addc-e4a8-4809-8740-7d066ae754e7 batch.kubernetes.io/job-name: s3-init controller-uid: 03a8addc-e4a8-4809-8740-7d066ae754e7 job-name: s3-init spec: containers: - command: - /bin/sh - -c - | aws s3 mb s3://logger-output || true aws s3 mb s3://example-models || true curl -L https://storage.googleapis.com/kfserving-examples/models/sklearn/1.0/model/model.joblib -o /tmp/sklearn-model.joblib aws s3 cp /tmp/sklearn-model.joblib s3://example-models/sklearn/model.joblib --no-verify-ssl env: - name: AWS_ACCESS_KEY_ID valueFrom: secretKeyRef: key: accesskey name: mlpipeline-s3-artifact - name: AWS_SECRET_ACCESS_KEY valueFrom: secretKeyRef: key: secretkey name: mlpipeline-s3-artifact - name: AWS_DEFAULT_REGION value: us-east-1 - name: AWS_ENDPOINT_URL_S3 value: http://s3-service.kserve:8333 image: docker.io/amazon/aws-cli:2.33.11@sha256:88ea087837da1b31a3afeeb4538888244a3087a867ddb1909848643fcc4b324e imagePullPolicy: IfNotPresent name: s3-init resources: {} terminationMessagePath: /dev/termination-log terminationMessagePolicy: File dnsPolicy: ClusterFirst restartPolicy: Never schedulerName: default-scheduler securityContext: {} terminationGracePeriodSeconds: 30 status: completionTime: "2026-03-18T16:53:35Z" conditions: - lastProbeTime: "2026-03-18T16:53:35Z" lastTransitionTime: "2026-03-18T16:53:35Z" message: Reached expected number of succeeded pods reason: CompletionsReached status: "True" type: SuccessCriteriaMet - lastProbeTime: "2026-03-18T16:53:35Z" lastTransitionTime: "2026-03-18T16:53:35Z" message: Reached expected number of succeeded pods reason: CompletionsReached status: "True" type: Complete ready: 0 startTime: "2026-03-18T16:53:24Z" succeeded: 1 terminating: 0 uncountedTerminatedPods: {} kind: JobList metadata: resourceVersion: "28727"