1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
/// CronJob represents the configuration of a single cron job.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CronJob {
/// Standard object's metadata.
/// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
/// +optional
#[prost(message, optional, tag="1")]
pub metadata: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::ObjectMeta>,
/// Specification of the desired behavior of a cron job, including the schedule.
/// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
/// +optional
#[prost(message, optional, tag="2")]
pub spec: ::core::option::Option<CronJobSpec>,
/// Current status of a cron job.
/// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
/// +optional
#[prost(message, optional, tag="3")]
pub status: ::core::option::Option<CronJobStatus>,
}
/// CronJobList is a collection of cron jobs.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CronJobList {
/// Standard list metadata.
/// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
/// +optional
#[prost(message, optional, tag="1")]
pub metadata: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::ListMeta>,
/// items is the list of CronJobs.
#[prost(message, repeated, tag="2")]
pub items: ::prost::alloc::vec::Vec<CronJob>,
}
/// CronJobSpec describes how the job execution will look like and when it will actually run.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CronJobSpec {
/// The schedule in Cron format, see https://en.wikipedia.org/wiki/Cron.
#[prost(string, optional, tag="1")]
pub schedule: ::core::option::Option<::prost::alloc::string::String>,
/// The time zone name for the given schedule, see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
/// If not specified, this will default to the time zone of the kube-controller-manager process.
/// The set of valid time zone names and the time zone offset is loaded from the system-wide time zone
/// database by the API server during CronJob validation and the controller manager during execution.
/// If no system-wide time zone database can be found a bundled version of the database is used instead.
/// If the time zone name becomes invalid during the lifetime of a CronJob or due to a change in host
/// configuration, the controller will stop creating new new Jobs and will create a system event with the
/// reason UnknownTimeZone.
/// More information can be found in https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/#time-zones
/// +optional
#[prost(string, optional, tag="8")]
pub time_zone: ::core::option::Option<::prost::alloc::string::String>,
/// Optional deadline in seconds for starting the job if it misses scheduled
/// time for any reason. Missed jobs executions will be counted as failed ones.
/// +optional
#[prost(int64, optional, tag="2")]
pub starting_deadline_seconds: ::core::option::Option<i64>,
/// Specifies how to treat concurrent executions of a Job.
/// Valid values are:
///
/// - "Allow" (default): allows CronJobs to run concurrently;
/// - "Forbid": forbids concurrent runs, skipping next run if previous run hasn't finished yet;
/// - "Replace": cancels currently running job and replaces it with a new one
/// +optional
#[prost(string, optional, tag="3")]
pub concurrency_policy: ::core::option::Option<::prost::alloc::string::String>,
/// This flag tells the controller to suspend subsequent executions, it does
/// not apply to already started executions. Defaults to false.
/// +optional
#[prost(bool, optional, tag="4")]
pub suspend: ::core::option::Option<bool>,
/// Specifies the job that will be created when executing a CronJob.
#[prost(message, optional, tag="5")]
pub job_template: ::core::option::Option<JobTemplateSpec>,
/// The number of successful finished jobs to retain.
/// This is a pointer to distinguish between explicit zero and not specified.
/// Defaults to 3.
/// +optional
#[prost(int32, optional, tag="6")]
pub successful_jobs_history_limit: ::core::option::Option<i32>,
/// The number of failed finished jobs to retain.
/// This is a pointer to distinguish between explicit zero and not specified.
/// Defaults to 1.
/// +optional
#[prost(int32, optional, tag="7")]
pub failed_jobs_history_limit: ::core::option::Option<i32>,
}
/// CronJobStatus represents the current state of a cron job.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CronJobStatus {
/// A list of pointers to currently running jobs.
/// +optional
/// +listType=atomic
#[prost(message, repeated, tag="1")]
pub active: ::prost::alloc::vec::Vec<super::super::core::v1::ObjectReference>,
/// Information when was the last time the job was successfully scheduled.
/// +optional
#[prost(message, optional, tag="4")]
pub last_schedule_time: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::Time>,
/// Information when was the last time the job successfully completed.
/// +optional
#[prost(message, optional, tag="5")]
pub last_successful_time: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::Time>,
}
/// JobTemplateSpec describes the data a Job should have when created from a template
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct JobTemplateSpec {
/// Standard object's metadata of the jobs created from this template.
/// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
/// +optional
#[prost(message, optional, tag="1")]
pub metadata: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::ObjectMeta>,
/// Specification of the desired behavior of the job.
/// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
/// +optional
#[prost(message, optional, tag="2")]
pub spec: ::core::option::Option<super::v1::JobSpec>,
}