mirror of https://github.com/openkruise/charts.git
282 lines
15 KiB
YAML
282 lines
15 KiB
YAML
{{- if .Values.crds.managed }}
|
|
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.14.0
|
|
name: advancedcronjobs.apps.kruise.io
|
|
spec:
|
|
group: apps.kruise.io
|
|
names:
|
|
kind: AdvancedCronJob
|
|
listKind: AdvancedCronJobList
|
|
plural: advancedcronjobs
|
|
shortNames:
|
|
- acj
|
|
singular: advancedcronjob
|
|
scope: Namespaced
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- description: The schedule of advanced cron job.
|
|
jsonPath: .spec.schedule
|
|
name: Schedule
|
|
type: string
|
|
- description: Type of cron job.
|
|
jsonPath: .status.type
|
|
name: Type
|
|
type: string
|
|
- description: The last time at which job was scheduled.
|
|
jsonPath: .status.lastScheduleTime
|
|
name: LastScheduleTime
|
|
type: date
|
|
- description: CreationTimestamp is a timestamp representing the server time when
|
|
this object was created. It is not guaranteed to be set in happens-before
|
|
order across separate operations. Clients may not set this value. It is represented
|
|
in RFC3339 form and is in UTC.
|
|
jsonPath: .metadata.creationTimestamp
|
|
name: AGE
|
|
type: date
|
|
name: v1alpha1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: AdvancedCronJob is the Schema for the advancedcronjobs API
|
|
properties:
|
|
apiVersion:
|
|
description: |-
|
|
APIVersion defines the versioned schema of this representation of an object.
|
|
Servers should convert recognized schemas to the latest internal value, and
|
|
may reject unrecognized values.
|
|
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
|
|
type: string
|
|
kind:
|
|
description: |-
|
|
Kind is a string value representing the REST resource this object represents.
|
|
Servers may infer this from the endpoint the client submits requests to.
|
|
Cannot be updated.
|
|
In CamelCase.
|
|
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
description: AdvancedCronJobSpec defines the desired state of AdvancedCronJob
|
|
properties:
|
|
concurrencyPolicy:
|
|
description: |-
|
|
Specifies how to treat concurrent executions of a Job.
|
|
Valid values are:
|
|
- "Allow" (default): allows CronJobs to run concurrently;
|
|
- "Forbid": forbids concurrent runs, skipping next run if previous run hasn't finished yet;
|
|
- "Replace": cancels currently running job and replaces it with a new one
|
|
enum:
|
|
- Allow
|
|
- Forbid
|
|
- Replace
|
|
type: string
|
|
failedJobsHistoryLimit:
|
|
description: |-
|
|
The number of failed finished jobs to retain.
|
|
This is a pointer to distinguish between explicit zero and not specified.
|
|
format: int32
|
|
type: integer
|
|
paused:
|
|
description: Paused will pause the cron job.
|
|
type: boolean
|
|
schedule:
|
|
description: The schedule in Cron format, see https://en.wikipedia.org/wiki/Cron.
|
|
minLength: 0
|
|
type: string
|
|
startingDeadlineSeconds:
|
|
description: |-
|
|
Optional deadline in seconds for starting the job if it misses scheduled
|
|
time for any reason. Missed jobs executions will be counted as failed ones.
|
|
format: int64
|
|
type: integer
|
|
successfulJobsHistoryLimit:
|
|
description: |-
|
|
The number of successful finished jobs to retain.
|
|
This is a pointer to distinguish between explicit zero and not specified.
|
|
format: int32
|
|
type: integer
|
|
template:
|
|
description: Specifies the job that will be created when executing
|
|
a CronJob.
|
|
properties:
|
|
broadcastJobTemplate:
|
|
description: Specifies the broadcastjob that will be created when
|
|
executing a BroadcastCronJob.
|
|
properties:
|
|
metadata:
|
|
description: Standard object's metadata of the jobs created
|
|
from this template.
|
|
type: object
|
|
spec:
|
|
description: Specification of the desired behavior of the
|
|
broadcastjob.
|
|
properties:
|
|
completionPolicy:
|
|
description: |-
|
|
CompletionPolicy indicates the completion policy of the job.
|
|
Default is Always CompletionPolicyType.
|
|
properties:
|
|
activeDeadlineSeconds:
|
|
description: |-
|
|
ActiveDeadlineSeconds specifies the duration in seconds relative to the startTime that the job may be active
|
|
before the system tries to terminate it; value must be positive integer.
|
|
Only works for Always type.
|
|
format: int64
|
|
type: integer
|
|
ttlSecondsAfterFinished:
|
|
description: |-
|
|
ttlSecondsAfterFinished limits the lifetime of a Job that has finished
|
|
execution (either Complete or Failed). If this field is set,
|
|
ttlSecondsAfterFinished after the Job finishes, it is eligible to be
|
|
automatically deleted. When the Job is being deleted, its lifecycle
|
|
guarantees (e.g. finalizers) will be honored. If this field is unset,
|
|
the Job won't be automatically deleted. If this field is set to zero,
|
|
the Job becomes eligible to be deleted immediately after it finishes.
|
|
This field is alpha-level and is only honored by servers that enable the
|
|
TTLAfterFinished feature.
|
|
Only works for Always type
|
|
format: int32
|
|
type: integer
|
|
type:
|
|
description: |-
|
|
Type indicates the type of the CompletionPolicy.
|
|
Default is Always.
|
|
type: string
|
|
type: object
|
|
failurePolicy:
|
|
description: FailurePolicy indicates the behavior of the
|
|
job, when failed pod is found.
|
|
properties:
|
|
restartLimit:
|
|
description: RestartLimit specifies the number of
|
|
retries before marking the pod failed.
|
|
format: int32
|
|
type: integer
|
|
type:
|
|
description: |-
|
|
Type indicates the type of FailurePolicyType.
|
|
Default is FailurePolicyTypeFailFast.
|
|
type: string
|
|
type: object
|
|
parallelism:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
description: |-
|
|
Parallelism specifies the maximum desired number of pods the job should
|
|
run at any given time. The actual number of pods running in steady state will
|
|
be less than this number when the work left to do is less than max parallelism.
|
|
Not setting this value means no limit.
|
|
x-kubernetes-int-or-string: true
|
|
paused:
|
|
description: Paused will pause the job.
|
|
type: boolean
|
|
template:
|
|
description: Template describes the pod that will be created
|
|
when executing a job.
|
|
x-kubernetes-preserve-unknown-fields: true
|
|
required:
|
|
- template
|
|
type: object
|
|
type: object
|
|
jobTemplate:
|
|
description: Specifies the job that will be created when executing
|
|
a CronJob.
|
|
x-kubernetes-preserve-unknown-fields: true
|
|
type: object
|
|
timeZone:
|
|
description: |-
|
|
The time zone name for the given schedule, see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
|
|
If not specified, this will default to the time zone of the kruise-controller-manager process.
|
|
type: string
|
|
required:
|
|
- schedule
|
|
- template
|
|
type: object
|
|
status:
|
|
description: AdvancedCronJobStatus defines the observed state of AdvancedCronJob
|
|
properties:
|
|
active:
|
|
description: A list of pointers to currently running jobs.
|
|
items:
|
|
description: |-
|
|
ObjectReference contains enough information to let you inspect or modify the referred object.
|
|
---
|
|
New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs.
|
|
1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage.
|
|
2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular
|
|
restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted".
|
|
Those cannot be well described when embedded.
|
|
3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen.
|
|
4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity
|
|
during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple
|
|
and the version of the actual struct is irrelevant.
|
|
5. We cannot easily change it. Because this type is embedded in many locations, updates to this type
|
|
will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control.
|
|
|
|
|
|
Instead of using this type, create a locally provided and used type that is well-focused on your reference.
|
|
For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 .
|
|
properties:
|
|
apiVersion:
|
|
description: API version of the referent.
|
|
type: string
|
|
fieldPath:
|
|
description: |-
|
|
If referring to a piece of an object instead of an entire object, this string
|
|
should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
|
|
For example, if the object reference is to a container within a pod, this would take on a value like:
|
|
"spec.containers{name}" (where "name" refers to the name of the container that triggered
|
|
the event) or if no container name is specified "spec.containers[2]" (container with
|
|
index 2 in this pod). This syntax is chosen only to have some well-defined way of
|
|
referencing a part of an object.
|
|
TODO: this design is not final and this field is subject to change in the future.
|
|
type: string
|
|
kind:
|
|
description: |-
|
|
Kind of the referent.
|
|
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
|
type: string
|
|
name:
|
|
description: |-
|
|
Name of the referent.
|
|
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
type: string
|
|
namespace:
|
|
description: |-
|
|
Namespace of the referent.
|
|
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
|
|
type: string
|
|
resourceVersion:
|
|
description: |-
|
|
Specific resourceVersion to which this reference is made, if any.
|
|
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
|
|
type: string
|
|
uid:
|
|
description: |-
|
|
UID of the referent.
|
|
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids
|
|
type: string
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type: array
|
|
lastScheduleTime:
|
|
description: Information when was the last time the job was successfully
|
|
scheduled.
|
|
format: date-time
|
|
type: string
|
|
type:
|
|
type: string
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
{{- end }}
|