mirror of
https://github.com/kubevela/kubevela.git
synced 2026-02-14 10:00:06 +00:00
* Feat: upgrade k8s.io to 0.26 Signed-off-by: Somefive <yd219913@alibaba-inc.com> * Feat: replace temp replace Signed-off-by: Somefive <yd219913@alibaba-inc.com> --------- Signed-off-by: Somefive <yd219913@alibaba-inc.com>
587 lines
36 KiB
YAML
587 lines
36 KiB
YAML
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.11.3
|
|
name: healthscopes.core.oam.dev
|
|
spec:
|
|
group: core.oam.dev
|
|
names:
|
|
categories:
|
|
- oam
|
|
kind: HealthScope
|
|
listKind: HealthScopeList
|
|
plural: healthscopes
|
|
singular: healthscope
|
|
scope: Namespaced
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .status.health
|
|
name: HEALTH
|
|
type: string
|
|
name: v1alpha2
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: A HealthScope determines an aggregate health status based of
|
|
the health of components.
|
|
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: A HealthScopeSpec defines the desired state of a HealthScope.
|
|
properties:
|
|
appReferences:
|
|
description: AppRefs records references of applications' components
|
|
items:
|
|
description: AppReference records references of an application's
|
|
components
|
|
properties:
|
|
appName:
|
|
type: string
|
|
compReferences:
|
|
items:
|
|
description: CompReference records references of a component's
|
|
resources
|
|
properties:
|
|
compName:
|
|
type: string
|
|
traits:
|
|
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.
|
|
\n 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
|
|
workload:
|
|
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. \n 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: object
|
|
type: array
|
|
type: object
|
|
type: array
|
|
probe-interval:
|
|
description: ProbeInterval is the amount of time in seconds between
|
|
probing tries.
|
|
format: int32
|
|
type: integer
|
|
probe-timeout:
|
|
description: ProbeTimeout is the amount of time in seconds to wait
|
|
when receiving a response before marked failure.
|
|
format: int32
|
|
type: integer
|
|
workloadRefs:
|
|
description: WorkloadReferences to the workloads that are in this
|
|
scope.
|
|
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. \n 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
|
|
required:
|
|
- workloadRefs
|
|
type: object
|
|
status:
|
|
description: A HealthScopeStatus represents the observed state of a HealthScope.
|
|
properties:
|
|
appHealthConditions:
|
|
description: AppHealthConditions represents health condition of applications
|
|
in the scope
|
|
items:
|
|
description: AppHealthCondition represents health condition of an
|
|
application
|
|
properties:
|
|
appName:
|
|
type: string
|
|
components:
|
|
items:
|
|
description: WorkloadHealthCondition represents informative
|
|
health condition of a workload.
|
|
properties:
|
|
componentName:
|
|
description: ComponentName represents the component name
|
|
if target is a workload
|
|
type: string
|
|
customStatusMsg:
|
|
type: string
|
|
diagnosis:
|
|
type: string
|
|
healthStatus:
|
|
description: HealthStatus represents health status strings.
|
|
type: string
|
|
targetWorkload:
|
|
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. \n 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
|
|
traits:
|
|
items:
|
|
description: TraitHealthCondition represents informative
|
|
health condition of a trait.
|
|
properties:
|
|
customStatusMsg:
|
|
type: string
|
|
diagnosis:
|
|
type: string
|
|
healthStatus:
|
|
description: HealthStatus represents health status
|
|
strings.
|
|
type: string
|
|
resource:
|
|
type: string
|
|
type:
|
|
type: string
|
|
required:
|
|
- healthStatus
|
|
- resource
|
|
- type
|
|
type: object
|
|
type: array
|
|
workloadStatus:
|
|
description: WorkloadStatus represents status of workloads
|
|
whose HealthStatus is UNKNOWN.
|
|
type: string
|
|
required:
|
|
- healthStatus
|
|
type: object
|
|
type: array
|
|
envName:
|
|
type: string
|
|
required:
|
|
- appName
|
|
type: object
|
|
type: array
|
|
conditions:
|
|
description: Conditions of the resource.
|
|
items:
|
|
description: A Condition that may apply to a resource.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: LastTransitionTime is the last time this condition
|
|
transitioned from one status to another.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: A Message containing details about this condition's
|
|
last transition from one status to another, if any.
|
|
type: string
|
|
reason:
|
|
description: A Reason for this condition's last transition from
|
|
one status to another.
|
|
type: string
|
|
status:
|
|
description: Status of this condition; is it currently True,
|
|
False, or Unknown?
|
|
type: string
|
|
type:
|
|
description: Type of this condition. At most one of each condition
|
|
type may apply to a resource at any point in time.
|
|
type: string
|
|
required:
|
|
- lastTransitionTime
|
|
- reason
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
healthConditions:
|
|
description: WorkloadHealthConditions represents health condition
|
|
of workloads in the scope Use AppHealthConditions to provide app
|
|
level status
|
|
items:
|
|
description: WorkloadHealthCondition represents informative health
|
|
condition of a workload.
|
|
properties:
|
|
componentName:
|
|
description: ComponentName represents the component name if
|
|
target is a workload
|
|
type: string
|
|
customStatusMsg:
|
|
type: string
|
|
diagnosis:
|
|
type: string
|
|
healthStatus:
|
|
description: HealthStatus represents health status strings.
|
|
type: string
|
|
targetWorkload:
|
|
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. \n 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
|
|
traits:
|
|
items:
|
|
description: TraitHealthCondition represents informative health
|
|
condition of a trait.
|
|
properties:
|
|
customStatusMsg:
|
|
type: string
|
|
diagnosis:
|
|
type: string
|
|
healthStatus:
|
|
description: HealthStatus represents health status strings.
|
|
type: string
|
|
resource:
|
|
type: string
|
|
type:
|
|
type: string
|
|
required:
|
|
- healthStatus
|
|
- resource
|
|
- type
|
|
type: object
|
|
type: array
|
|
workloadStatus:
|
|
description: WorkloadStatus represents status of workloads whose
|
|
HealthStatus is UNKNOWN.
|
|
type: string
|
|
required:
|
|
- healthStatus
|
|
type: object
|
|
type: array
|
|
scopeHealthCondition:
|
|
description: ScopeHealthCondition represents health condition summary
|
|
of the scope
|
|
properties:
|
|
healthStatus:
|
|
description: HealthStatus represents health status strings.
|
|
type: string
|
|
healthyWorkloads:
|
|
format: int64
|
|
type: integer
|
|
total:
|
|
format: int64
|
|
type: integer
|
|
unhealthyWorkloads:
|
|
format: int64
|
|
type: integer
|
|
unknownWorkloads:
|
|
format: int64
|
|
type: integer
|
|
required:
|
|
- healthStatus
|
|
type: object
|
|
required:
|
|
- scopeHealthCondition
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|