123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184 |
- /*
- Copyright The Kubernetes Authors.
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- */
- // This file was autogenerated by go-to-protobuf. Do not edit it manually!
- syntax = 'proto2';
- package k8s.io.api.batch.v1;
- import "k8s.io/api/core/v1/generated.proto";
- import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto";
- import "k8s.io/apimachinery/pkg/runtime/generated.proto";
- import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto";
- // Package-wide variables from generator "generated".
- option go_package = "v1";
- // Job represents the configuration of a single job.
- message Job {
- // Standard object's metadata.
- // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
- // +optional
- optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1;
- // Specification of the desired behavior of a job.
- // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
- // +optional
- optional JobSpec spec = 2;
- // Current status of a job.
- // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
- // +optional
- optional JobStatus status = 3;
- }
- // JobCondition describes current state of a job.
- message JobCondition {
- // Type of job condition, Complete or Failed.
- optional string type = 1;
- // Status of the condition, one of True, False, Unknown.
- optional string status = 2;
- // Last time the condition was checked.
- // +optional
- optional k8s.io.apimachinery.pkg.apis.meta.v1.Time lastProbeTime = 3;
- // Last time the condition transit from one status to another.
- // +optional
- optional k8s.io.apimachinery.pkg.apis.meta.v1.Time lastTransitionTime = 4;
- // (brief) reason for the condition's last transition.
- // +optional
- optional string reason = 5;
- // Human readable message indicating details about last transition.
- // +optional
- optional string message = 6;
- }
- // JobList is a collection of jobs.
- message JobList {
- // Standard list metadata.
- // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
- // +optional
- optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1;
- // items is the list of Jobs.
- repeated Job items = 2;
- }
- // JobSpec describes how the job execution will look like.
- message JobSpec {
- // Specifies the maximum desired number of pods the job should
- // run at any given time. The actual number of pods running in steady state will
- // be less than this number when ((.spec.completions - .status.successful) < .spec.parallelism),
- // i.e. when the work left to do is less than max parallelism.
- // More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/
- // +optional
- optional int32 parallelism = 1;
- // Specifies the desired number of successfully finished pods the
- // job should be run with. Setting to nil means that the success of any
- // pod signals the success of all pods, and allows parallelism to have any positive
- // value. Setting to 1 means that parallelism is limited to 1 and the success of that
- // pod signals the success of the job.
- // More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/
- // +optional
- optional int32 completions = 2;
- // Specifies the duration in seconds relative to the startTime that the job may be active
- // before the system tries to terminate it; value must be positive integer
- // +optional
- optional int64 activeDeadlineSeconds = 3;
- // Specifies the number of retries before marking this job failed.
- // Defaults to 6
- // +optional
- optional int32 backoffLimit = 7;
- // A label query over pods that should match the pod count.
- // Normally, the system sets this field for you.
- // More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors
- // +optional
- optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 4;
- // manualSelector controls generation of pod labels and pod selectors.
- // Leave `manualSelector` unset unless you are certain what you are doing.
- // When false or unset, the system pick labels unique to this job
- // and appends those labels to the pod template. When true,
- // the user is responsible for picking unique labels and specifying
- // the selector. Failure to pick a unique label may cause this
- // and other jobs to not function correctly. However, You may see
- // `manualSelector=true` in jobs that were created with the old `extensions/v1beta1`
- // API.
- // More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/#specifying-your-own-pod-selector
- // +optional
- optional bool manualSelector = 5;
- // Describes the pod that will be created when executing a job.
- // More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/
- optional k8s.io.api.core.v1.PodTemplateSpec template = 6;
- // ttlSecondsAfterFinished limits the lifetime of a Job that has finished
- // execution (either Complete or Failed). If this field is set,
- // ttlSecondsAfterFinished after the Job finishes, it is eligible to be
- // automatically deleted. When the Job is being deleted, its lifecycle
- // guarantees (e.g. finalizers) will be honored. If this field is unset,
- // the Job won't be automatically deleted. If this field is set to zero,
- // the Job becomes eligible to be deleted immediately after it finishes.
- // This field is alpha-level and is only honored by servers that enable the
- // TTLAfterFinished feature.
- // +optional
- optional int32 ttlSecondsAfterFinished = 8;
- }
- // JobStatus represents the current state of a Job.
- message JobStatus {
- // The latest available observations of an object's current state.
- // More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/
- // +optional
- // +patchMergeKey=type
- // +patchStrategy=merge
- repeated JobCondition conditions = 1;
- // Represents time when the job was acknowledged by the job controller.
- // It is not guaranteed to be set in happens-before order across separate operations.
- // It is represented in RFC3339 form and is in UTC.
- // +optional
- optional k8s.io.apimachinery.pkg.apis.meta.v1.Time startTime = 2;
- // Represents time when the job was completed. It is not guaranteed to
- // be set in happens-before order across separate operations.
- // It is represented in RFC3339 form and is in UTC.
- // +optional
- optional k8s.io.apimachinery.pkg.apis.meta.v1.Time completionTime = 3;
- // The number of actively running pods.
- // +optional
- optional int32 active = 4;
- // The number of pods which reached phase Succeeded.
- // +optional
- optional int32 succeeded = 5;
- // The number of pods which reached phase Failed.
- // +optional
- optional int32 failed = 6;
- }
|