diff --git a/charts/vela-core/templates/defwithtemplate/task.yaml b/charts/vela-core/templates/defwithtemplate/task.yaml index cd1a39030..a5cffcc80 100644 --- a/charts/vela-core/templates/defwithtemplate/task.yaml +++ b/charts/vela-core/templates/defwithtemplate/task.yaml @@ -244,6 +244,30 @@ spec: // +usage=Number of consecutive failures required to determine the container is not alive (liveness probe) or not ready (readiness probe). failureThreshold: *3 | int } + status: + customStatus: |- + status: { + active: *0 | int + failed: *0 | int + succeeded: *0 | int + } & { + if context.output.status.active != _|_ { + active: context.output.status.active + } + if context.output.status.failed != _|_ { + failed: context.output.status.failed + } + if context.output.status.succeeded != _|_ { + succeeded: context.output.status.succeeded + } + } + message: "Active/Failed/Succeeded:\(status.active)/\(status.failed)/\(status.succeeded)" + healthPolicy: |- + succeeded: *0 | int + if context.output.status.succeeded != _|_ { + succeeded: context.output.status.succeeded + } + isHealth: succeeded == context.output.spec.parallelism workload: definition: apiVersion: batch/v1 diff --git a/charts/vela-core/templates/defwithtemplate/webservice.yaml b/charts/vela-core/templates/defwithtemplate/webservice.yaml index a3d09e513..61ee9bdd4 100644 --- a/charts/vela-core/templates/defwithtemplate/webservice.yaml +++ b/charts/vela-core/templates/defwithtemplate/webservice.yaml @@ -503,52 +503,35 @@ spec: } status: customStatus: |- - import "strconv" ready: { - if context.output.status.readyReplicas == _|_ { - readyReplicas: 0 - } - + readyReplicas: *0 | int + } & { if context.output.status.readyReplicas != _|_ { readyReplicas: context.output.status.readyReplicas } } - - message: "Ready:" + strconv.FormatInt(ready.readyReplicas, 10) + "/" + strconv.FormatInt(context.output.spec.replicas, 10) + message: "Ready:\(ready.readyReplicas)/\(context.output.spec.replicas)" healthPolicy: |- ready: { - if context.output.status.updatedReplicas == _|_ { - updatedReplicas : 0 + updatedReplicas: *0 | int + readyReplicas: *0 | int + replicas: *0 | int + observedGeneration: *0 | int + } & { + if context.output.status.updatedReplicas != _|_ { + updatedReplicas: context.output.status.updatedReplicas } - - if context.output.status.updatedReplicas != _|_ { - updatedReplicas : context.output.status.updatedReplicas - } - - if context.output.status.readyReplicas == _|_ { - readyReplicas: 0 - } - if context.output.status.readyReplicas != _|_ { readyReplicas: context.output.status.readyReplicas } - - if context.output.status.replicas == _|_ { - replicas: 0 - } if context.output.status.replicas != _|_ { replicas: context.output.status.replicas } - if context.output.status.observedGeneration != _|_ { observedGeneration: context.output.status.observedGeneration } - - if context.output.status.observedGeneration == _|_ { - observedGeneration: 0 - } } - isHealth: (context.output.spec.replicas == ready.readyReplicas) && (context.output.spec.replicas == ready.updatedReplicas) && (context.output.spec.replicas == ready.replicas) && (ready.observedGeneration == context.output.metadata.generation || ready.observedGeneration > context.output.metadata.generation) + isHealth: (context.output.spec.replicas == ready.readyReplicas) && (context.output.spec.replicas == ready.updatedReplicas) && (context.output.spec.replicas == ready.replicas) && (ready.observedGeneration == context.output.metadata.generation || ready.observedGeneration > context.output.metadata.generation) workload: definition: apiVersion: apps/v1 diff --git a/charts/vela-core/templates/defwithtemplate/worker.yaml b/charts/vela-core/templates/defwithtemplate/worker.yaml index 3e0c2077e..fce01f224 100644 --- a/charts/vela-core/templates/defwithtemplate/worker.yaml +++ b/charts/vela-core/templates/defwithtemplate/worker.yaml @@ -396,52 +396,35 @@ spec: } status: customStatus: |- - import "strconv" ready: { - if context.output.status.readyReplicas == _|_ { - readyReplicas: 0 - } - + readyReplicas: *0 | int + } & { if context.output.status.readyReplicas != _|_ { readyReplicas: context.output.status.readyReplicas } } - - message: "Ready:" + strconv.FormatInt(ready.readyReplicas, 10) + "/" + strconv.FormatInt(context.output.spec.replicas, 10) + message: "Ready:\(ready.readyReplicas)/\(context.output.spec.replicas)" healthPolicy: |- ready: { - if context.output.status.updatedReplicas == _|_ { - updatedReplicas : 0 + updatedReplicas: *0 | int + readyReplicas: *0 | int + replicas: *0 | int + observedGeneration: *0 | int + } & { + if context.output.status.updatedReplicas != _|_ { + updatedReplicas: context.output.status.updatedReplicas } - - if context.output.status.updatedReplicas != _|_ { - updatedReplicas : context.output.status.updatedReplicas - } - - if context.output.status.readyReplicas == _|_ { - readyReplicas: 0 - } - if context.output.status.readyReplicas != _|_ { readyReplicas: context.output.status.readyReplicas } - - if context.output.status.replicas == _|_ { - replicas: 0 - } if context.output.status.replicas != _|_ { replicas: context.output.status.replicas } - if context.output.status.observedGeneration != _|_ { observedGeneration: context.output.status.observedGeneration } - - if context.output.status.observedGeneration == _|_ { - observedGeneration: 0 - } } - isHealth: (context.output.spec.replicas == ready.readyReplicas) && (context.output.spec.replicas == ready.updatedReplicas) && (context.output.spec.replicas == ready.replicas) && (ready.observedGeneration == context.output.metadata.generation || ready.observedGeneration > context.output.metadata.generation) + isHealth: (context.output.spec.replicas == ready.readyReplicas) && (context.output.spec.replicas == ready.updatedReplicas) && (context.output.spec.replicas == ready.replicas) && (ready.observedGeneration == context.output.metadata.generation || ready.observedGeneration > context.output.metadata.generation) workload: definition: apiVersion: apps/v1 diff --git a/charts/vela-minimal/templates/defwithtemplate/task.yaml b/charts/vela-minimal/templates/defwithtemplate/task.yaml index cd1a39030..a5cffcc80 100644 --- a/charts/vela-minimal/templates/defwithtemplate/task.yaml +++ b/charts/vela-minimal/templates/defwithtemplate/task.yaml @@ -244,6 +244,30 @@ spec: // +usage=Number of consecutive failures required to determine the container is not alive (liveness probe) or not ready (readiness probe). failureThreshold: *3 | int } + status: + customStatus: |- + status: { + active: *0 | int + failed: *0 | int + succeeded: *0 | int + } & { + if context.output.status.active != _|_ { + active: context.output.status.active + } + if context.output.status.failed != _|_ { + failed: context.output.status.failed + } + if context.output.status.succeeded != _|_ { + succeeded: context.output.status.succeeded + } + } + message: "Active/Failed/Succeeded:\(status.active)/\(status.failed)/\(status.succeeded)" + healthPolicy: |- + succeeded: *0 | int + if context.output.status.succeeded != _|_ { + succeeded: context.output.status.succeeded + } + isHealth: succeeded == context.output.spec.parallelism workload: definition: apiVersion: batch/v1 diff --git a/charts/vela-minimal/templates/defwithtemplate/webservice.yaml b/charts/vela-minimal/templates/defwithtemplate/webservice.yaml index a3d09e513..61ee9bdd4 100644 --- a/charts/vela-minimal/templates/defwithtemplate/webservice.yaml +++ b/charts/vela-minimal/templates/defwithtemplate/webservice.yaml @@ -503,52 +503,35 @@ spec: } status: customStatus: |- - import "strconv" ready: { - if context.output.status.readyReplicas == _|_ { - readyReplicas: 0 - } - + readyReplicas: *0 | int + } & { if context.output.status.readyReplicas != _|_ { readyReplicas: context.output.status.readyReplicas } } - - message: "Ready:" + strconv.FormatInt(ready.readyReplicas, 10) + "/" + strconv.FormatInt(context.output.spec.replicas, 10) + message: "Ready:\(ready.readyReplicas)/\(context.output.spec.replicas)" healthPolicy: |- ready: { - if context.output.status.updatedReplicas == _|_ { - updatedReplicas : 0 + updatedReplicas: *0 | int + readyReplicas: *0 | int + replicas: *0 | int + observedGeneration: *0 | int + } & { + if context.output.status.updatedReplicas != _|_ { + updatedReplicas: context.output.status.updatedReplicas } - - if context.output.status.updatedReplicas != _|_ { - updatedReplicas : context.output.status.updatedReplicas - } - - if context.output.status.readyReplicas == _|_ { - readyReplicas: 0 - } - if context.output.status.readyReplicas != _|_ { readyReplicas: context.output.status.readyReplicas } - - if context.output.status.replicas == _|_ { - replicas: 0 - } if context.output.status.replicas != _|_ { replicas: context.output.status.replicas } - if context.output.status.observedGeneration != _|_ { observedGeneration: context.output.status.observedGeneration } - - if context.output.status.observedGeneration == _|_ { - observedGeneration: 0 - } } - isHealth: (context.output.spec.replicas == ready.readyReplicas) && (context.output.spec.replicas == ready.updatedReplicas) && (context.output.spec.replicas == ready.replicas) && (ready.observedGeneration == context.output.metadata.generation || ready.observedGeneration > context.output.metadata.generation) + isHealth: (context.output.spec.replicas == ready.readyReplicas) && (context.output.spec.replicas == ready.updatedReplicas) && (context.output.spec.replicas == ready.replicas) && (ready.observedGeneration == context.output.metadata.generation || ready.observedGeneration > context.output.metadata.generation) workload: definition: apiVersion: apps/v1 diff --git a/charts/vela-minimal/templates/defwithtemplate/worker.yaml b/charts/vela-minimal/templates/defwithtemplate/worker.yaml index 3e0c2077e..fce01f224 100644 --- a/charts/vela-minimal/templates/defwithtemplate/worker.yaml +++ b/charts/vela-minimal/templates/defwithtemplate/worker.yaml @@ -396,52 +396,35 @@ spec: } status: customStatus: |- - import "strconv" ready: { - if context.output.status.readyReplicas == _|_ { - readyReplicas: 0 - } - + readyReplicas: *0 | int + } & { if context.output.status.readyReplicas != _|_ { readyReplicas: context.output.status.readyReplicas } } - - message: "Ready:" + strconv.FormatInt(ready.readyReplicas, 10) + "/" + strconv.FormatInt(context.output.spec.replicas, 10) + message: "Ready:\(ready.readyReplicas)/\(context.output.spec.replicas)" healthPolicy: |- ready: { - if context.output.status.updatedReplicas == _|_ { - updatedReplicas : 0 + updatedReplicas: *0 | int + readyReplicas: *0 | int + replicas: *0 | int + observedGeneration: *0 | int + } & { + if context.output.status.updatedReplicas != _|_ { + updatedReplicas: context.output.status.updatedReplicas } - - if context.output.status.updatedReplicas != _|_ { - updatedReplicas : context.output.status.updatedReplicas - } - - if context.output.status.readyReplicas == _|_ { - readyReplicas: 0 - } - if context.output.status.readyReplicas != _|_ { readyReplicas: context.output.status.readyReplicas } - - if context.output.status.replicas == _|_ { - replicas: 0 - } if context.output.status.replicas != _|_ { replicas: context.output.status.replicas } - if context.output.status.observedGeneration != _|_ { observedGeneration: context.output.status.observedGeneration } - - if context.output.status.observedGeneration == _|_ { - observedGeneration: 0 - } } - isHealth: (context.output.spec.replicas == ready.readyReplicas) && (context.output.spec.replicas == ready.updatedReplicas) && (context.output.spec.replicas == ready.replicas) && (ready.observedGeneration == context.output.metadata.generation || ready.observedGeneration > context.output.metadata.generation) + isHealth: (context.output.spec.replicas == ready.readyReplicas) && (context.output.spec.replicas == ready.updatedReplicas) && (context.output.spec.replicas == ready.replicas) && (ready.observedGeneration == context.output.metadata.generation || ready.observedGeneration > context.output.metadata.generation) workload: definition: apiVersion: apps/v1 diff --git a/vela-templates/definitions/internal/component/task.cue b/vela-templates/definitions/internal/component/task.cue index 6cafd1f97..48ae23013 100644 --- a/vela-templates/definitions/internal/component/task.cue +++ b/vela-templates/definitions/internal/component/task.cue @@ -3,12 +3,41 @@ task: { annotations: {} labels: {} description: "Describes jobs that run code or a script to completion." - attributes: workload: { - definition: { - apiVersion: "batch/v1" - kind: "Job" + attributes: { + workload: { + definition: { + apiVersion: "batch/v1" + kind: "Job" + } + type: "jobs.batch" + } + status: { + customStatus: #""" + status: { + active: *0 | int + failed: *0 | int + succeeded: *0 | int + } & { + if context.output.status.active != _|_ { + active: context.output.status.active + } + if context.output.status.failed != _|_ { + failed: context.output.status.failed + } + if context.output.status.succeeded != _|_ { + succeeded: context.output.status.succeeded + } + } + message: "Active/Failed/Succeeded:\(status.active)/\(status.failed)/\(status.succeeded)" + """# + healthPolicy: #""" + succeeded: *0 | int + if context.output.status.succeeded != _|_ { + succeeded: context.output.status.succeeded + } + isHealth: succeeded == context.output.spec.parallelism + """# } - type: "jobs.batch" } } template: { diff --git a/vela-templates/definitions/internal/component/webservice.cue b/vela-templates/definitions/internal/component/webservice.cue index b7099b4f6..b1b2348fe 100644 --- a/vela-templates/definitions/internal/component/webservice.cue +++ b/vela-templates/definitions/internal/component/webservice.cue @@ -17,53 +17,36 @@ webservice: { } status: { customStatus: #""" - import "strconv" ready: { - if context.output.status.readyReplicas == _|_ { - readyReplicas: 0 - } - + readyReplicas: *0 | int + } & { if context.output.status.readyReplicas != _|_ { readyReplicas: context.output.status.readyReplicas } } - - message: "Ready:" + strconv.FormatInt(ready.readyReplicas, 10) + "/" + strconv.FormatInt(context.output.spec.replicas, 10) + message: "Ready:\(ready.readyReplicas)/\(context.output.spec.replicas)" """# healthPolicy: #""" ready: { - if context.output.status.updatedReplicas == _|_ { - updatedReplicas : 0 + updatedReplicas: *0 | int + readyReplicas: *0 | int + replicas: *0 | int + observedGeneration: *0 | int + } & { + if context.output.status.updatedReplicas != _|_ { + updatedReplicas: context.output.status.updatedReplicas } - - if context.output.status.updatedReplicas != _|_ { - updatedReplicas : context.output.status.updatedReplicas - } - - if context.output.status.readyReplicas == _|_ { - readyReplicas: 0 - } - if context.output.status.readyReplicas != _|_ { readyReplicas: context.output.status.readyReplicas } - - if context.output.status.replicas == _|_ { - replicas: 0 - } if context.output.status.replicas != _|_ { replicas: context.output.status.replicas } - if context.output.status.observedGeneration != _|_ { observedGeneration: context.output.status.observedGeneration } - - if context.output.status.observedGeneration == _|_ { - observedGeneration: 0 - } } - isHealth: (context.output.spec.replicas == ready.readyReplicas) && (context.output.spec.replicas == ready.updatedReplicas) && (context.output.spec.replicas == ready.replicas) && (ready.observedGeneration == context.output.metadata.generation || ready.observedGeneration > context.output.metadata.generation) + isHealth: (context.output.spec.replicas == ready.readyReplicas) && (context.output.spec.replicas == ready.updatedReplicas) && (context.output.spec.replicas == ready.replicas) && (ready.observedGeneration == context.output.metadata.generation || ready.observedGeneration > context.output.metadata.generation) """# } } diff --git a/vela-templates/definitions/internal/component/worker.cue b/vela-templates/definitions/internal/component/worker.cue index 9ab7bf5f8..b35b0a4a2 100644 --- a/vela-templates/definitions/internal/component/worker.cue +++ b/vela-templates/definitions/internal/component/worker.cue @@ -15,53 +15,36 @@ worker: { } status: { customStatus: #""" - import "strconv" ready: { - if context.output.status.readyReplicas == _|_ { - readyReplicas: 0 - } - + readyReplicas: *0 | int + } & { if context.output.status.readyReplicas != _|_ { readyReplicas: context.output.status.readyReplicas } } - - message: "Ready:" + strconv.FormatInt(ready.readyReplicas, 10) + "/" + strconv.FormatInt(context.output.spec.replicas, 10) + message: "Ready:\(ready.readyReplicas)/\(context.output.spec.replicas)" """# healthPolicy: #""" ready: { - if context.output.status.updatedReplicas == _|_ { - updatedReplicas : 0 + updatedReplicas: *0 | int + readyReplicas: *0 | int + replicas: *0 | int + observedGeneration: *0 | int + } & { + if context.output.status.updatedReplicas != _|_ { + updatedReplicas: context.output.status.updatedReplicas } - - if context.output.status.updatedReplicas != _|_ { - updatedReplicas : context.output.status.updatedReplicas - } - - if context.output.status.readyReplicas == _|_ { - readyReplicas: 0 - } - if context.output.status.readyReplicas != _|_ { readyReplicas: context.output.status.readyReplicas } - - if context.output.status.replicas == _|_ { - replicas: 0 - } if context.output.status.replicas != _|_ { replicas: context.output.status.replicas } - if context.output.status.observedGeneration != _|_ { observedGeneration: context.output.status.observedGeneration } - - if context.output.status.observedGeneration == _|_ { - observedGeneration: 0 - } } - isHealth: (context.output.spec.replicas == ready.readyReplicas) && (context.output.spec.replicas == ready.updatedReplicas) && (context.output.spec.replicas == ready.replicas) && (ready.observedGeneration == context.output.metadata.generation || ready.observedGeneration > context.output.metadata.generation) + isHealth: (context.output.spec.replicas == ready.readyReplicas) && (context.output.spec.replicas == ready.updatedReplicas) && (context.output.spec.replicas == ready.replicas) && (ready.observedGeneration == context.output.metadata.generation || ready.observedGeneration > context.output.metadata.generation) """# } }