#[allow(unused_imports)]
mod prelude {
pub use kube::CustomResource;
pub use serde::{Serialize, Deserialize};
pub use std::collections::BTreeMap;
pub use k8s_openapi::apimachinery::pkg::util::intstr::IntOrString;
pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::Condition;
}
use self::prelude::*;
#[derive(CustomResource, Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
#[kube(group = "k8up.io", version = "v1", kind = "Schedule", plural = "schedules")]
#[kube(namespaced)]
#[kube(status = "ScheduleStatus")]
#[kube(schema = "disabled")]
#[kube(derive="Default")]
#[kube(derive="PartialEq")]
pub struct ScheduleSpec {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub archive: Option<ScheduleArchive>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub backend: Option<ScheduleBackend>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub backup: Option<ScheduleBackup>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub check: Option<ScheduleCheck>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "failedJobsHistoryLimit")]
pub failed_jobs_history_limit: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keepJobs")]
pub keep_jobs: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podConfigRef")]
pub pod_config_ref: Option<SchedulePodConfigRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podSecurityContext")]
pub pod_security_context: Option<SchedulePodSecurityContext>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub prune: Option<SchedulePrune>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "resourceRequirementsTemplate")]
pub resource_requirements_template: Option<ScheduleResourceRequirementsTemplate>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub restore: Option<ScheduleRestore>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "successfulJobsHistoryLimit")]
pub successful_jobs_history_limit: Option<i64>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchive {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "activeDeadlineSeconds")]
pub active_deadline_seconds: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub backend: Option<ScheduleArchiveBackend>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "concurrentRunsAllowed")]
pub concurrent_runs_allowed: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "failedJobsHistoryLimit")]
pub failed_jobs_history_limit: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keepJobs")]
pub keep_jobs: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podConfigRef")]
pub pod_config_ref: Option<ScheduleArchivePodConfigRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podSecurityContext")]
pub pod_security_context: Option<ScheduleArchivePodSecurityContext>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub resources: Option<ScheduleArchiveResources>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "restoreFilter")]
pub restore_filter: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "restoreMethod")]
pub restore_method: Option<ScheduleArchiveRestoreMethod>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub schedule: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub snapshot: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "successfulJobsHistoryLimit")]
pub successful_jobs_history_limit: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub tags: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volumes: Option<Vec<ScheduleArchiveVolumes>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackend {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub azure: Option<ScheduleArchiveBackendAzure>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub b2: Option<ScheduleArchiveBackendB2>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "envFrom")]
pub env_from: Option<Vec<ScheduleArchiveBackendEnvFrom>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub gcs: Option<ScheduleArchiveBackendGcs>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub local: Option<ScheduleArchiveBackendLocal>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "repoPasswordSecretRef")]
pub repo_password_secret_ref: Option<ScheduleArchiveBackendRepoPasswordSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub rest: Option<ScheduleArchiveBackendRest>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub s3: Option<ScheduleArchiveBackendS3>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub swift: Option<ScheduleArchiveBackendSwift>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsOptions")]
pub tls_options: Option<ScheduleArchiveBackendTlsOptions>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")]
pub volume_mounts: Option<Vec<ScheduleArchiveBackendVolumeMounts>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendAzure {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountKeySecretRef")]
pub account_key_secret_ref: Option<ScheduleArchiveBackendAzureAccountKeySecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountNameSecretRef")]
pub account_name_secret_ref: Option<ScheduleArchiveBackendAzureAccountNameSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendAzureAccountKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendAzureAccountNameSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendB2 {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountIDSecretRef")]
pub account_id_secret_ref: Option<ScheduleArchiveBackendB2AccountIdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountKeySecretRef")]
pub account_key_secret_ref: Option<ScheduleArchiveBackendB2AccountKeySecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendB2AccountIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendB2AccountKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendEnvFrom {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapRef")]
pub config_map_ref: Option<ScheduleArchiveBackendEnvFromConfigMapRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub prefix: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<ScheduleArchiveBackendEnvFromSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendEnvFromConfigMapRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendEnvFromSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendGcs {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessTokenSecretRef")]
pub access_token_secret_ref: Option<ScheduleArchiveBackendGcsAccessTokenSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "projectIDSecretRef")]
pub project_id_secret_ref: Option<ScheduleArchiveBackendGcsProjectIdSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendGcsAccessTokenSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendGcsProjectIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendLocal {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPath")]
pub mount_path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendRepoPasswordSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendRest {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "passwordSecretReg")]
pub password_secret_reg: Option<ScheduleArchiveBackendRestPasswordSecretReg>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub url: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "userSecretRef")]
pub user_secret_ref: Option<ScheduleArchiveBackendRestUserSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendRestPasswordSecretReg {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendRestUserSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendS3 {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessKeyIDSecretRef")]
pub access_key_id_secret_ref: Option<ScheduleArchiveBackendS3AccessKeyIdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub endpoint: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretAccessKeySecretRef")]
pub secret_access_key_secret_ref: Option<ScheduleArchiveBackendS3SecretAccessKeySecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendS3AccessKeyIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendS3SecretAccessKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendSwift {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendTlsOptions {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "caCert")]
pub ca_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientCert")]
pub client_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientKey")]
pub client_key: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveBackendVolumeMounts {
#[serde(rename = "mountPath")]
pub mount_path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")]
pub mount_propagation: Option<String>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")]
pub sub_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")]
pub sub_path_expr: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchivePodConfigRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchivePodSecurityContext {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")]
pub fs_group: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroupChangePolicy")]
pub fs_group_change_policy: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")]
pub run_as_group: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")]
pub run_as_non_root: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")]
pub run_as_user: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")]
pub se_linux_options: Option<ScheduleArchivePodSecurityContextSeLinuxOptions>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")]
pub seccomp_profile: Option<ScheduleArchivePodSecurityContextSeccompProfile>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "supplementalGroups")]
pub supplemental_groups: Option<Vec<i64>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub sysctls: Option<Vec<ScheduleArchivePodSecurityContextSysctls>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")]
pub windows_options: Option<ScheduleArchivePodSecurityContextWindowsOptions>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchivePodSecurityContextSeLinuxOptions {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub level: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub role: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchivePodSecurityContextSeccompProfile {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")]
pub localhost_profile: Option<String>,
#[serde(rename = "type")]
pub r#type: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchivePodSecurityContextSysctls {
pub name: String,
pub value: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchivePodSecurityContextWindowsOptions {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")]
pub gmsa_credential_spec: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")]
pub gmsa_credential_spec_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")]
pub host_process: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")]
pub run_as_user_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveResources {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<ScheduleArchiveResourcesClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveResourcesClaims {
pub name: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveRestoreMethod {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub folder: Option<ScheduleArchiveRestoreMethodFolder>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub s3: Option<ScheduleArchiveRestoreMethodS3>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsOptions")]
pub tls_options: Option<ScheduleArchiveRestoreMethodTlsOptions>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")]
pub volume_mounts: Option<Vec<ScheduleArchiveRestoreMethodVolumeMounts>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveRestoreMethodFolder {
#[serde(rename = "claimName")]
pub claim_name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveRestoreMethodS3 {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessKeyIDSecretRef")]
pub access_key_id_secret_ref: Option<ScheduleArchiveRestoreMethodS3AccessKeyIdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub endpoint: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretAccessKeySecretRef")]
pub secret_access_key_secret_ref: Option<ScheduleArchiveRestoreMethodS3SecretAccessKeySecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveRestoreMethodS3AccessKeyIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveRestoreMethodS3SecretAccessKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveRestoreMethodTlsOptions {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "caCert")]
pub ca_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientCert")]
pub client_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientKey")]
pub client_key: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveRestoreMethodVolumeMounts {
#[serde(rename = "mountPath")]
pub mount_path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")]
pub mount_propagation: Option<String>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")]
pub sub_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")]
pub sub_path_expr: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveVolumes {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")]
pub config_map: Option<ScheduleArchiveVolumesConfigMap>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolumeClaim")]
pub persistent_volume_claim: Option<ScheduleArchiveVolumesPersistentVolumeClaim>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub secret: Option<ScheduleArchiveVolumesSecret>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveVolumesConfigMap {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<ScheduleArchiveVolumesConfigMapItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveVolumesConfigMapItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveVolumesPersistentVolumeClaim {
#[serde(rename = "claimName")]
pub claim_name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveVolumesSecret {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<ScheduleArchiveVolumesSecretItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")]
pub secret_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleArchiveVolumesSecretItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackend {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub azure: Option<ScheduleBackendAzure>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub b2: Option<ScheduleBackendB2>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "envFrom")]
pub env_from: Option<Vec<ScheduleBackendEnvFrom>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub gcs: Option<ScheduleBackendGcs>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub local: Option<ScheduleBackendLocal>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "repoPasswordSecretRef")]
pub repo_password_secret_ref: Option<ScheduleBackendRepoPasswordSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub rest: Option<ScheduleBackendRest>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub s3: Option<ScheduleBackendS3>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub swift: Option<ScheduleBackendSwift>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsOptions")]
pub tls_options: Option<ScheduleBackendTlsOptions>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")]
pub volume_mounts: Option<Vec<ScheduleBackendVolumeMounts>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendAzure {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountKeySecretRef")]
pub account_key_secret_ref: Option<ScheduleBackendAzureAccountKeySecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountNameSecretRef")]
pub account_name_secret_ref: Option<ScheduleBackendAzureAccountNameSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendAzureAccountKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendAzureAccountNameSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendB2 {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountIDSecretRef")]
pub account_id_secret_ref: Option<ScheduleBackendB2AccountIdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountKeySecretRef")]
pub account_key_secret_ref: Option<ScheduleBackendB2AccountKeySecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendB2AccountIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendB2AccountKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendEnvFrom {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapRef")]
pub config_map_ref: Option<ScheduleBackendEnvFromConfigMapRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub prefix: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<ScheduleBackendEnvFromSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendEnvFromConfigMapRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendEnvFromSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendGcs {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessTokenSecretRef")]
pub access_token_secret_ref: Option<ScheduleBackendGcsAccessTokenSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "projectIDSecretRef")]
pub project_id_secret_ref: Option<ScheduleBackendGcsProjectIdSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendGcsAccessTokenSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendGcsProjectIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendLocal {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPath")]
pub mount_path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendRepoPasswordSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendRest {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "passwordSecretReg")]
pub password_secret_reg: Option<ScheduleBackendRestPasswordSecretReg>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub url: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "userSecretRef")]
pub user_secret_ref: Option<ScheduleBackendRestUserSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendRestPasswordSecretReg {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendRestUserSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendS3 {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessKeyIDSecretRef")]
pub access_key_id_secret_ref: Option<ScheduleBackendS3AccessKeyIdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub endpoint: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretAccessKeySecretRef")]
pub secret_access_key_secret_ref: Option<ScheduleBackendS3SecretAccessKeySecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendS3AccessKeyIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendS3SecretAccessKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendSwift {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendTlsOptions {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "caCert")]
pub ca_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientCert")]
pub client_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientKey")]
pub client_key: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackendVolumeMounts {
#[serde(rename = "mountPath")]
pub mount_path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")]
pub mount_propagation: Option<String>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")]
pub sub_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")]
pub sub_path_expr: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackup {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "activeDeadlineSeconds")]
pub active_deadline_seconds: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub backend: Option<ScheduleBackupBackend>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clusterName")]
pub cluster_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "concurrentRunsAllowed")]
pub concurrent_runs_allowed: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "failedJobsHistoryLimit")]
pub failed_jobs_history_limit: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keepJobs")]
pub keep_jobs: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "labelSelectors")]
pub label_selectors: Option<Vec<ScheduleBackupLabelSelectors>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podConfigRef")]
pub pod_config_ref: Option<ScheduleBackupPodConfigRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podSecurityContext")]
pub pod_security_context: Option<ScheduleBackupPodSecurityContext>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "promURL")]
pub prom_url: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub resources: Option<ScheduleBackupResources>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub schedule: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "statsURL")]
pub stats_url: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "successfulJobsHistoryLimit")]
pub successful_jobs_history_limit: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub tags: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volumes: Option<Vec<ScheduleBackupVolumes>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackend {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub azure: Option<ScheduleBackupBackendAzure>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub b2: Option<ScheduleBackupBackendB2>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "envFrom")]
pub env_from: Option<Vec<ScheduleBackupBackendEnvFrom>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub gcs: Option<ScheduleBackupBackendGcs>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub local: Option<ScheduleBackupBackendLocal>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "repoPasswordSecretRef")]
pub repo_password_secret_ref: Option<ScheduleBackupBackendRepoPasswordSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub rest: Option<ScheduleBackupBackendRest>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub s3: Option<ScheduleBackupBackendS3>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub swift: Option<ScheduleBackupBackendSwift>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsOptions")]
pub tls_options: Option<ScheduleBackupBackendTlsOptions>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")]
pub volume_mounts: Option<Vec<ScheduleBackupBackendVolumeMounts>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendAzure {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountKeySecretRef")]
pub account_key_secret_ref: Option<ScheduleBackupBackendAzureAccountKeySecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountNameSecretRef")]
pub account_name_secret_ref: Option<ScheduleBackupBackendAzureAccountNameSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendAzureAccountKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendAzureAccountNameSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendB2 {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountIDSecretRef")]
pub account_id_secret_ref: Option<ScheduleBackupBackendB2AccountIdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountKeySecretRef")]
pub account_key_secret_ref: Option<ScheduleBackupBackendB2AccountKeySecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendB2AccountIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendB2AccountKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendEnvFrom {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapRef")]
pub config_map_ref: Option<ScheduleBackupBackendEnvFromConfigMapRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub prefix: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<ScheduleBackupBackendEnvFromSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendEnvFromConfigMapRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendEnvFromSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendGcs {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessTokenSecretRef")]
pub access_token_secret_ref: Option<ScheduleBackupBackendGcsAccessTokenSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "projectIDSecretRef")]
pub project_id_secret_ref: Option<ScheduleBackupBackendGcsProjectIdSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendGcsAccessTokenSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendGcsProjectIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendLocal {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPath")]
pub mount_path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendRepoPasswordSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendRest {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "passwordSecretReg")]
pub password_secret_reg: Option<ScheduleBackupBackendRestPasswordSecretReg>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub url: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "userSecretRef")]
pub user_secret_ref: Option<ScheduleBackupBackendRestUserSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendRestPasswordSecretReg {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendRestUserSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendS3 {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessKeyIDSecretRef")]
pub access_key_id_secret_ref: Option<ScheduleBackupBackendS3AccessKeyIdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub endpoint: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretAccessKeySecretRef")]
pub secret_access_key_secret_ref: Option<ScheduleBackupBackendS3SecretAccessKeySecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendS3AccessKeyIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendS3SecretAccessKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendSwift {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendTlsOptions {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "caCert")]
pub ca_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientCert")]
pub client_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientKey")]
pub client_key: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupBackendVolumeMounts {
#[serde(rename = "mountPath")]
pub mount_path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")]
pub mount_propagation: Option<String>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")]
pub sub_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")]
pub sub_path_expr: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupLabelSelectors {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchExpressions")]
pub match_expressions: Option<Vec<ScheduleBackupLabelSelectorsMatchExpressions>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "matchLabels")]
pub match_labels: Option<BTreeMap<String, String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupLabelSelectorsMatchExpressions {
pub key: String,
pub operator: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub values: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupPodConfigRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupPodSecurityContext {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")]
pub fs_group: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroupChangePolicy")]
pub fs_group_change_policy: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")]
pub run_as_group: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")]
pub run_as_non_root: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")]
pub run_as_user: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")]
pub se_linux_options: Option<ScheduleBackupPodSecurityContextSeLinuxOptions>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")]
pub seccomp_profile: Option<ScheduleBackupPodSecurityContextSeccompProfile>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "supplementalGroups")]
pub supplemental_groups: Option<Vec<i64>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub sysctls: Option<Vec<ScheduleBackupPodSecurityContextSysctls>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")]
pub windows_options: Option<ScheduleBackupPodSecurityContextWindowsOptions>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupPodSecurityContextSeLinuxOptions {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub level: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub role: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupPodSecurityContextSeccompProfile {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")]
pub localhost_profile: Option<String>,
#[serde(rename = "type")]
pub r#type: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupPodSecurityContextSysctls {
pub name: String,
pub value: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupPodSecurityContextWindowsOptions {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")]
pub gmsa_credential_spec: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")]
pub gmsa_credential_spec_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")]
pub host_process: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")]
pub run_as_user_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupResources {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<ScheduleBackupResourcesClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupResourcesClaims {
pub name: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupVolumes {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")]
pub config_map: Option<ScheduleBackupVolumesConfigMap>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolumeClaim")]
pub persistent_volume_claim: Option<ScheduleBackupVolumesPersistentVolumeClaim>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub secret: Option<ScheduleBackupVolumesSecret>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupVolumesConfigMap {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<ScheduleBackupVolumesConfigMapItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupVolumesConfigMapItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupVolumesPersistentVolumeClaim {
#[serde(rename = "claimName")]
pub claim_name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupVolumesSecret {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<ScheduleBackupVolumesSecretItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")]
pub secret_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleBackupVolumesSecretItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheck {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "activeDeadlineSeconds")]
pub active_deadline_seconds: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub backend: Option<ScheduleCheckBackend>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clusterName")]
pub cluster_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "concurrentRunsAllowed")]
pub concurrent_runs_allowed: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "failedJobsHistoryLimit")]
pub failed_jobs_history_limit: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keepJobs")]
pub keep_jobs: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podConfigRef")]
pub pod_config_ref: Option<ScheduleCheckPodConfigRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podSecurityContext")]
pub pod_security_context: Option<ScheduleCheckPodSecurityContext>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "promURL")]
pub prom_url: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub resources: Option<ScheduleCheckResources>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub schedule: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "successfulJobsHistoryLimit")]
pub successful_jobs_history_limit: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volumes: Option<Vec<ScheduleCheckVolumes>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackend {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub azure: Option<ScheduleCheckBackendAzure>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub b2: Option<ScheduleCheckBackendB2>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "envFrom")]
pub env_from: Option<Vec<ScheduleCheckBackendEnvFrom>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub gcs: Option<ScheduleCheckBackendGcs>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub local: Option<ScheduleCheckBackendLocal>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "repoPasswordSecretRef")]
pub repo_password_secret_ref: Option<ScheduleCheckBackendRepoPasswordSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub rest: Option<ScheduleCheckBackendRest>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub s3: Option<ScheduleCheckBackendS3>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub swift: Option<ScheduleCheckBackendSwift>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsOptions")]
pub tls_options: Option<ScheduleCheckBackendTlsOptions>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")]
pub volume_mounts: Option<Vec<ScheduleCheckBackendVolumeMounts>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendAzure {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountKeySecretRef")]
pub account_key_secret_ref: Option<ScheduleCheckBackendAzureAccountKeySecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountNameSecretRef")]
pub account_name_secret_ref: Option<ScheduleCheckBackendAzureAccountNameSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendAzureAccountKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendAzureAccountNameSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendB2 {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountIDSecretRef")]
pub account_id_secret_ref: Option<ScheduleCheckBackendB2AccountIdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountKeySecretRef")]
pub account_key_secret_ref: Option<ScheduleCheckBackendB2AccountKeySecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendB2AccountIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendB2AccountKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendEnvFrom {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapRef")]
pub config_map_ref: Option<ScheduleCheckBackendEnvFromConfigMapRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub prefix: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<ScheduleCheckBackendEnvFromSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendEnvFromConfigMapRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendEnvFromSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendGcs {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessTokenSecretRef")]
pub access_token_secret_ref: Option<ScheduleCheckBackendGcsAccessTokenSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "projectIDSecretRef")]
pub project_id_secret_ref: Option<ScheduleCheckBackendGcsProjectIdSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendGcsAccessTokenSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendGcsProjectIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendLocal {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPath")]
pub mount_path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendRepoPasswordSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendRest {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "passwordSecretReg")]
pub password_secret_reg: Option<ScheduleCheckBackendRestPasswordSecretReg>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub url: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "userSecretRef")]
pub user_secret_ref: Option<ScheduleCheckBackendRestUserSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendRestPasswordSecretReg {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendRestUserSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendS3 {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessKeyIDSecretRef")]
pub access_key_id_secret_ref: Option<ScheduleCheckBackendS3AccessKeyIdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub endpoint: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretAccessKeySecretRef")]
pub secret_access_key_secret_ref: Option<ScheduleCheckBackendS3SecretAccessKeySecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendS3AccessKeyIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendS3SecretAccessKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendSwift {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendTlsOptions {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "caCert")]
pub ca_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientCert")]
pub client_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientKey")]
pub client_key: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckBackendVolumeMounts {
#[serde(rename = "mountPath")]
pub mount_path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")]
pub mount_propagation: Option<String>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")]
pub sub_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")]
pub sub_path_expr: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckPodConfigRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckPodSecurityContext {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")]
pub fs_group: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroupChangePolicy")]
pub fs_group_change_policy: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")]
pub run_as_group: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")]
pub run_as_non_root: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")]
pub run_as_user: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")]
pub se_linux_options: Option<ScheduleCheckPodSecurityContextSeLinuxOptions>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")]
pub seccomp_profile: Option<ScheduleCheckPodSecurityContextSeccompProfile>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "supplementalGroups")]
pub supplemental_groups: Option<Vec<i64>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub sysctls: Option<Vec<ScheduleCheckPodSecurityContextSysctls>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")]
pub windows_options: Option<ScheduleCheckPodSecurityContextWindowsOptions>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckPodSecurityContextSeLinuxOptions {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub level: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub role: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckPodSecurityContextSeccompProfile {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")]
pub localhost_profile: Option<String>,
#[serde(rename = "type")]
pub r#type: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckPodSecurityContextSysctls {
pub name: String,
pub value: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckPodSecurityContextWindowsOptions {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")]
pub gmsa_credential_spec: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")]
pub gmsa_credential_spec_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")]
pub host_process: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")]
pub run_as_user_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckResources {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<ScheduleCheckResourcesClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckResourcesClaims {
pub name: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckVolumes {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")]
pub config_map: Option<ScheduleCheckVolumesConfigMap>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolumeClaim")]
pub persistent_volume_claim: Option<ScheduleCheckVolumesPersistentVolumeClaim>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub secret: Option<ScheduleCheckVolumesSecret>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckVolumesConfigMap {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<ScheduleCheckVolumesConfigMapItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckVolumesConfigMapItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckVolumesPersistentVolumeClaim {
#[serde(rename = "claimName")]
pub claim_name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckVolumesSecret {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<ScheduleCheckVolumesSecretItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")]
pub secret_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleCheckVolumesSecretItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePodConfigRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePodSecurityContext {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")]
pub fs_group: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroupChangePolicy")]
pub fs_group_change_policy: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")]
pub run_as_group: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")]
pub run_as_non_root: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")]
pub run_as_user: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")]
pub se_linux_options: Option<SchedulePodSecurityContextSeLinuxOptions>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")]
pub seccomp_profile: Option<SchedulePodSecurityContextSeccompProfile>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "supplementalGroups")]
pub supplemental_groups: Option<Vec<i64>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub sysctls: Option<Vec<SchedulePodSecurityContextSysctls>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")]
pub windows_options: Option<SchedulePodSecurityContextWindowsOptions>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePodSecurityContextSeLinuxOptions {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub level: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub role: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePodSecurityContextSeccompProfile {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")]
pub localhost_profile: Option<String>,
#[serde(rename = "type")]
pub r#type: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePodSecurityContextSysctls {
pub name: String,
pub value: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePodSecurityContextWindowsOptions {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")]
pub gmsa_credential_spec: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")]
pub gmsa_credential_spec_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")]
pub host_process: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")]
pub run_as_user_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePrune {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "activeDeadlineSeconds")]
pub active_deadline_seconds: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub backend: Option<SchedulePruneBackend>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "concurrentRunsAllowed")]
pub concurrent_runs_allowed: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "failedJobsHistoryLimit")]
pub failed_jobs_history_limit: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keepJobs")]
pub keep_jobs: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podConfigRef")]
pub pod_config_ref: Option<SchedulePrunePodConfigRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podSecurityContext")]
pub pod_security_context: Option<SchedulePrunePodSecurityContext>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub resources: Option<SchedulePruneResources>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub retention: Option<SchedulePruneRetention>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub schedule: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "successfulJobsHistoryLimit")]
pub successful_jobs_history_limit: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volumes: Option<Vec<SchedulePruneVolumes>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackend {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub azure: Option<SchedulePruneBackendAzure>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub b2: Option<SchedulePruneBackendB2>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "envFrom")]
pub env_from: Option<Vec<SchedulePruneBackendEnvFrom>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub gcs: Option<SchedulePruneBackendGcs>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub local: Option<SchedulePruneBackendLocal>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "repoPasswordSecretRef")]
pub repo_password_secret_ref: Option<SchedulePruneBackendRepoPasswordSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub rest: Option<SchedulePruneBackendRest>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub s3: Option<SchedulePruneBackendS3>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub swift: Option<SchedulePruneBackendSwift>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsOptions")]
pub tls_options: Option<SchedulePruneBackendTlsOptions>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")]
pub volume_mounts: Option<Vec<SchedulePruneBackendVolumeMounts>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendAzure {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountKeySecretRef")]
pub account_key_secret_ref: Option<SchedulePruneBackendAzureAccountKeySecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountNameSecretRef")]
pub account_name_secret_ref: Option<SchedulePruneBackendAzureAccountNameSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendAzureAccountKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendAzureAccountNameSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendB2 {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountIDSecretRef")]
pub account_id_secret_ref: Option<SchedulePruneBackendB2AccountIdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountKeySecretRef")]
pub account_key_secret_ref: Option<SchedulePruneBackendB2AccountKeySecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendB2AccountIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendB2AccountKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendEnvFrom {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapRef")]
pub config_map_ref: Option<SchedulePruneBackendEnvFromConfigMapRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub prefix: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<SchedulePruneBackendEnvFromSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendEnvFromConfigMapRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendEnvFromSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendGcs {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessTokenSecretRef")]
pub access_token_secret_ref: Option<SchedulePruneBackendGcsAccessTokenSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "projectIDSecretRef")]
pub project_id_secret_ref: Option<SchedulePruneBackendGcsProjectIdSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendGcsAccessTokenSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendGcsProjectIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendLocal {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPath")]
pub mount_path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendRepoPasswordSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendRest {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "passwordSecretReg")]
pub password_secret_reg: Option<SchedulePruneBackendRestPasswordSecretReg>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub url: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "userSecretRef")]
pub user_secret_ref: Option<SchedulePruneBackendRestUserSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendRestPasswordSecretReg {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendRestUserSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendS3 {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessKeyIDSecretRef")]
pub access_key_id_secret_ref: Option<SchedulePruneBackendS3AccessKeyIdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub endpoint: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretAccessKeySecretRef")]
pub secret_access_key_secret_ref: Option<SchedulePruneBackendS3SecretAccessKeySecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendS3AccessKeyIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendS3SecretAccessKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendSwift {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendTlsOptions {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "caCert")]
pub ca_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientCert")]
pub client_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientKey")]
pub client_key: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneBackendVolumeMounts {
#[serde(rename = "mountPath")]
pub mount_path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")]
pub mount_propagation: Option<String>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")]
pub sub_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")]
pub sub_path_expr: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePrunePodConfigRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePrunePodSecurityContext {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")]
pub fs_group: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroupChangePolicy")]
pub fs_group_change_policy: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")]
pub run_as_group: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")]
pub run_as_non_root: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")]
pub run_as_user: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")]
pub se_linux_options: Option<SchedulePrunePodSecurityContextSeLinuxOptions>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")]
pub seccomp_profile: Option<SchedulePrunePodSecurityContextSeccompProfile>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "supplementalGroups")]
pub supplemental_groups: Option<Vec<i64>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub sysctls: Option<Vec<SchedulePrunePodSecurityContextSysctls>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")]
pub windows_options: Option<SchedulePrunePodSecurityContextWindowsOptions>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePrunePodSecurityContextSeLinuxOptions {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub level: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub role: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePrunePodSecurityContextSeccompProfile {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")]
pub localhost_profile: Option<String>,
#[serde(rename = "type")]
pub r#type: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePrunePodSecurityContextSysctls {
pub name: String,
pub value: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePrunePodSecurityContextWindowsOptions {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")]
pub gmsa_credential_spec: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")]
pub gmsa_credential_spec_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")]
pub host_process: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")]
pub run_as_user_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneResources {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<SchedulePruneResourcesClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneResourcesClaims {
pub name: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneRetention {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub hostnames: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keepDaily")]
pub keep_daily: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keepHourly")]
pub keep_hourly: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keepLast")]
pub keep_last: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keepMonthly")]
pub keep_monthly: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keepTags")]
pub keep_tags: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keepWeekly")]
pub keep_weekly: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keepYearly")]
pub keep_yearly: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub tags: Option<Vec<String>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneVolumes {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")]
pub config_map: Option<SchedulePruneVolumesConfigMap>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolumeClaim")]
pub persistent_volume_claim: Option<SchedulePruneVolumesPersistentVolumeClaim>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub secret: Option<SchedulePruneVolumesSecret>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneVolumesConfigMap {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<SchedulePruneVolumesConfigMapItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneVolumesConfigMapItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneVolumesPersistentVolumeClaim {
#[serde(rename = "claimName")]
pub claim_name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneVolumesSecret {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<SchedulePruneVolumesSecretItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")]
pub secret_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct SchedulePruneVolumesSecretItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleResourceRequirementsTemplate {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<ScheduleResourceRequirementsTemplateClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleResourceRequirementsTemplateClaims {
pub name: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestore {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "activeDeadlineSeconds")]
pub active_deadline_seconds: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub backend: Option<ScheduleRestoreBackend>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "concurrentRunsAllowed")]
pub concurrent_runs_allowed: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "failedJobsHistoryLimit")]
pub failed_jobs_history_limit: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "keepJobs")]
pub keep_jobs: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podConfigRef")]
pub pod_config_ref: Option<ScheduleRestorePodConfigRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "podSecurityContext")]
pub pod_security_context: Option<ScheduleRestorePodSecurityContext>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub resources: Option<ScheduleRestoreResources>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "restoreFilter")]
pub restore_filter: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "restoreMethod")]
pub restore_method: Option<ScheduleRestoreRestoreMethod>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub schedule: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub snapshot: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "successfulJobsHistoryLimit")]
pub successful_jobs_history_limit: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub tags: Option<Vec<String>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub volumes: Option<Vec<ScheduleRestoreVolumes>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackend {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub azure: Option<ScheduleRestoreBackendAzure>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub b2: Option<ScheduleRestoreBackendB2>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "envFrom")]
pub env_from: Option<Vec<ScheduleRestoreBackendEnvFrom>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub gcs: Option<ScheduleRestoreBackendGcs>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub local: Option<ScheduleRestoreBackendLocal>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "repoPasswordSecretRef")]
pub repo_password_secret_ref: Option<ScheduleRestoreBackendRepoPasswordSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub rest: Option<ScheduleRestoreBackendRest>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub s3: Option<ScheduleRestoreBackendS3>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub swift: Option<ScheduleRestoreBackendSwift>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsOptions")]
pub tls_options: Option<ScheduleRestoreBackendTlsOptions>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")]
pub volume_mounts: Option<Vec<ScheduleRestoreBackendVolumeMounts>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendAzure {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountKeySecretRef")]
pub account_key_secret_ref: Option<ScheduleRestoreBackendAzureAccountKeySecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountNameSecretRef")]
pub account_name_secret_ref: Option<ScheduleRestoreBackendAzureAccountNameSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendAzureAccountKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendAzureAccountNameSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendB2 {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountIDSecretRef")]
pub account_id_secret_ref: Option<ScheduleRestoreBackendB2AccountIdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accountKeySecretRef")]
pub account_key_secret_ref: Option<ScheduleRestoreBackendB2AccountKeySecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendB2AccountIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendB2AccountKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendEnvFrom {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMapRef")]
pub config_map_ref: Option<ScheduleRestoreBackendEnvFromConfigMapRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub prefix: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretRef")]
pub secret_ref: Option<ScheduleRestoreBackendEnvFromSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendEnvFromConfigMapRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendEnvFromSecretRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendGcs {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessTokenSecretRef")]
pub access_token_secret_ref: Option<ScheduleRestoreBackendGcsAccessTokenSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "projectIDSecretRef")]
pub project_id_secret_ref: Option<ScheduleRestoreBackendGcsProjectIdSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendGcsAccessTokenSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendGcsProjectIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendLocal {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPath")]
pub mount_path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendRepoPasswordSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendRest {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "passwordSecretReg")]
pub password_secret_reg: Option<ScheduleRestoreBackendRestPasswordSecretReg>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub url: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "userSecretRef")]
pub user_secret_ref: Option<ScheduleRestoreBackendRestUserSecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendRestPasswordSecretReg {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendRestUserSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendS3 {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessKeyIDSecretRef")]
pub access_key_id_secret_ref: Option<ScheduleRestoreBackendS3AccessKeyIdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub endpoint: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretAccessKeySecretRef")]
pub secret_access_key_secret_ref: Option<ScheduleRestoreBackendS3SecretAccessKeySecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendS3AccessKeyIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendS3SecretAccessKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendSwift {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendTlsOptions {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "caCert")]
pub ca_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientCert")]
pub client_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientKey")]
pub client_key: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreBackendVolumeMounts {
#[serde(rename = "mountPath")]
pub mount_path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")]
pub mount_propagation: Option<String>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")]
pub sub_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")]
pub sub_path_expr: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestorePodConfigRef {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestorePodSecurityContext {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroup")]
pub fs_group: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "fsGroupChangePolicy")]
pub fs_group_change_policy: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsGroup")]
pub run_as_group: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsNonRoot")]
pub run_as_non_root: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUser")]
pub run_as_user: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "seLinuxOptions")]
pub se_linux_options: Option<ScheduleRestorePodSecurityContextSeLinuxOptions>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "seccompProfile")]
pub seccomp_profile: Option<ScheduleRestorePodSecurityContextSeccompProfile>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "supplementalGroups")]
pub supplemental_groups: Option<Vec<i64>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub sysctls: Option<Vec<ScheduleRestorePodSecurityContextSysctls>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "windowsOptions")]
pub windows_options: Option<ScheduleRestorePodSecurityContextWindowsOptions>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestorePodSecurityContextSeLinuxOptions {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub level: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub role: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "type")]
pub r#type: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestorePodSecurityContextSeccompProfile {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "localhostProfile")]
pub localhost_profile: Option<String>,
#[serde(rename = "type")]
pub r#type: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestorePodSecurityContextSysctls {
pub name: String,
pub value: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestorePodSecurityContextWindowsOptions {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpec")]
pub gmsa_credential_spec: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "gmsaCredentialSpecName")]
pub gmsa_credential_spec_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "hostProcess")]
pub host_process: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "runAsUserName")]
pub run_as_user_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreResources {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub claims: Option<Vec<ScheduleRestoreResourcesClaims>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub limits: Option<BTreeMap<String, IntOrString>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub requests: Option<BTreeMap<String, IntOrString>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreResourcesClaims {
pub name: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreRestoreMethod {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub folder: Option<ScheduleRestoreRestoreMethodFolder>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub s3: Option<ScheduleRestoreRestoreMethodS3>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "tlsOptions")]
pub tls_options: Option<ScheduleRestoreRestoreMethodTlsOptions>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "volumeMounts")]
pub volume_mounts: Option<Vec<ScheduleRestoreRestoreMethodVolumeMounts>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreRestoreMethodFolder {
#[serde(rename = "claimName")]
pub claim_name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreRestoreMethodS3 {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "accessKeyIDSecretRef")]
pub access_key_id_secret_ref: Option<ScheduleRestoreRestoreMethodS3AccessKeyIdSecretRef>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub endpoint: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretAccessKeySecretRef")]
pub secret_access_key_secret_ref: Option<ScheduleRestoreRestoreMethodS3SecretAccessKeySecretRef>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreRestoreMethodS3AccessKeyIdSecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreRestoreMethodS3SecretAccessKeySecretRef {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreRestoreMethodTlsOptions {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "caCert")]
pub ca_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientCert")]
pub client_cert: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "clientKey")]
pub client_key: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreRestoreMethodVolumeMounts {
#[serde(rename = "mountPath")]
pub mount_path: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "mountPropagation")]
pub mount_propagation: Option<String>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPath")]
pub sub_path: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "subPathExpr")]
pub sub_path_expr: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreVolumes {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "configMap")]
pub config_map: Option<ScheduleRestoreVolumesConfigMap>,
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "persistentVolumeClaim")]
pub persistent_volume_claim: Option<ScheduleRestoreVolumesPersistentVolumeClaim>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub secret: Option<ScheduleRestoreVolumesSecret>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreVolumesConfigMap {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<ScheduleRestoreVolumesConfigMapItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreVolumesConfigMapItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreVolumesPersistentVolumeClaim {
#[serde(rename = "claimName")]
pub claim_name: String,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "readOnly")]
pub read_only: Option<bool>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreVolumesSecret {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "defaultMode")]
pub default_mode: Option<i32>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub items: Option<Vec<ScheduleRestoreVolumesSecretItems>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "secretName")]
pub secret_name: Option<String>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleRestoreVolumesSecretItems {
pub key: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub mode: Option<i32>,
pub path: String,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleStatus {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub conditions: Option<Vec<Condition>>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "effectiveSchedules")]
pub effective_schedules: Option<Vec<ScheduleStatusEffectiveSchedules>>,
}
#[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq)]
pub struct ScheduleStatusEffectiveSchedules {
#[serde(default, skip_serializing_if = "Option::is_none", rename = "generatedSchedule")]
pub generated_schedule: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none", rename = "jobType")]
pub job_type: Option<String>,
}