mirror of
https://github.com/open-cluster-management-io/ocm.git
synced 2026-02-14 10:00:11 +00:00
Some checks failed
Scorecard supply-chain security / Scorecard analysis (push) Failing after 2m2s
Post / coverage (push) Failing after 39m59s
Post / images (amd64, addon-manager) (push) Failing after 8m42s
Post / images (amd64, placement) (push) Failing after 7m45s
Post / images (amd64, registration) (push) Failing after 7m51s
Post / images (amd64, registration-operator) (push) Failing after 7m38s
Post / images (amd64, work) (push) Failing after 7m44s
Post / images (arm64, addon-manager) (push) Failing after 7m51s
Post / images (arm64, placement) (push) Failing after 7m48s
Post / images (arm64, registration) (push) Failing after 7m55s
Post / images (arm64, registration-operator) (push) Failing after 7m49s
Post / images (arm64, work) (push) Failing after 7m50s
Post / image manifest (addon-manager) (push) Has been skipped
Post / image manifest (placement) (push) Has been skipped
Post / image manifest (registration) (push) Has been skipped
Post / image manifest (registration-operator) (push) Has been skipped
Post / image manifest (work) (push) Has been skipped
Post / trigger clusteradm e2e (push) Has been skipped
Close stale issues and PRs / stale (push) Successful in 54s
Signed-off-by: Wei Liu <liuweixa@redhat.com>
635 lines
36 KiB
YAML
635 lines
36 KiB
YAML
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
name: clustermanagementaddons.addon.open-cluster-management.io
|
|
spec:
|
|
group: addon.open-cluster-management.io
|
|
names:
|
|
kind: ClusterManagementAddOn
|
|
listKind: ClusterManagementAddOnList
|
|
plural: clustermanagementaddons
|
|
shortNames:
|
|
- cma
|
|
- cmas
|
|
singular: clustermanagementaddon
|
|
preserveUnknownFields: false
|
|
scope: Cluster
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .spec.addOnMeta.displayName
|
|
name: DISPLAY NAME
|
|
type: string
|
|
- jsonPath: .spec.addOnConfiguration.crdName
|
|
name: CRD NAME
|
|
type: string
|
|
name: v1alpha1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: |-
|
|
ClusterManagementAddOn represents the registration of an add-on to the cluster manager.
|
|
This resource allows you to discover which add-ons are available for the cluster manager
|
|
and provides metadata information about the add-ons. The ClusterManagementAddOn name is used
|
|
for the namespace-scoped ManagedClusterAddOn resource.
|
|
ClusterManagementAddOn is a cluster-scoped resource.
|
|
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: spec represents a desired configuration for the agent on
|
|
the cluster management add-on.
|
|
properties:
|
|
addOnConfiguration:
|
|
description: |-
|
|
Deprecated: Use supportedConfigs filed instead
|
|
addOnConfiguration is a reference to configuration information for the add-on.
|
|
In scenario where a multiple add-ons share the same add-on CRD, multiple ClusterManagementAddOn
|
|
resources need to be created and reference the same AddOnConfiguration.
|
|
properties:
|
|
crName:
|
|
description: |-
|
|
crName is the name of the CR used to configure instances of the managed add-on.
|
|
This field should be configured if add-on CR have a consistent name across the all of the ManagedCluster instaces.
|
|
type: string
|
|
crdName:
|
|
description: |-
|
|
crdName is the name of the CRD used to configure instances of the managed add-on.
|
|
This field should be configured if the add-on have a CRD that controls the configuration of the add-on.
|
|
type: string
|
|
lastObservedGeneration:
|
|
description: lastObservedGeneration is the observed generation
|
|
of the custom resource for the configuration of the addon.
|
|
format: int64
|
|
type: integer
|
|
type: object
|
|
addOnMeta:
|
|
description: addOnMeta is a reference to the metadata information
|
|
for the add-on.
|
|
properties:
|
|
description:
|
|
description: description represents the detailed description of
|
|
the add-on.
|
|
type: string
|
|
displayName:
|
|
description: displayName represents the name of add-on that will
|
|
be displayed.
|
|
type: string
|
|
type: object
|
|
installStrategy:
|
|
default:
|
|
type: Manual
|
|
description: |-
|
|
InstallStrategy represents that related ManagedClusterAddOns should be installed
|
|
on certain clusters.
|
|
properties:
|
|
placements:
|
|
description: |-
|
|
Placements is a list of placement references honored when install strategy type is
|
|
Placements. All clusters selected by these placements will install the addon
|
|
If one cluster belongs to multiple placements, it will only apply the strategy defined
|
|
later in the order. That is to say, The latter strategy overrides the previous one.
|
|
items:
|
|
properties:
|
|
configs:
|
|
description: |-
|
|
Configs is the configuration of managedClusterAddon during installation.
|
|
User can override the configuration by updating the managedClusterAddon directly.
|
|
items:
|
|
properties:
|
|
group:
|
|
default: ""
|
|
description: group of the add-on configuration.
|
|
type: string
|
|
name:
|
|
description: name of the add-on configuration.
|
|
minLength: 1
|
|
type: string
|
|
namespace:
|
|
description: |-
|
|
namespace of the add-on configuration.
|
|
If this field is not set, the configuration is in the cluster scope.
|
|
type: string
|
|
resource:
|
|
description: resource of the add-on configuration.
|
|
minLength: 1
|
|
type: string
|
|
required:
|
|
- name
|
|
- resource
|
|
type: object
|
|
type: array
|
|
name:
|
|
description: Name is the name of the placement
|
|
minLength: 1
|
|
type: string
|
|
namespace:
|
|
description: Namespace is the namespace of the placement
|
|
minLength: 1
|
|
type: string
|
|
rolloutStrategy:
|
|
default:
|
|
type: All
|
|
description: |-
|
|
The rollout strategy to apply addon configurations change.
|
|
The rollout strategy only watches the addon configurations defined in ClusterManagementAddOn.
|
|
properties:
|
|
all:
|
|
description: All defines required fields for RolloutStrategy
|
|
type All
|
|
properties:
|
|
maxFailures:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
default: 0
|
|
description: |-
|
|
MaxFailures is a percentage or number of clusters in the current rollout that can fail before
|
|
proceeding to the next rollout. Fail means the cluster has a failed status or timeout status
|
|
(does not reach successful status after ProgressDeadline).
|
|
Once the MaxFailures is breached, the rollout will stop.
|
|
MaxFailures is only considered for rollout types Progressive and ProgressivePerGroup. For
|
|
Progressive, this is considered over the total number of clusters. For ProgressivePerGroup,
|
|
this is considered according to the size of the current group. For both Progressive and
|
|
ProgressivePerGroup, the MaxFailures does not apply for MandatoryDecisionGroups, which tolerate
|
|
no failures.
|
|
Default is that no failures are tolerated.
|
|
pattern: ^((100|[0-9]{1,2})%|[0-9]+)$
|
|
x-kubernetes-int-or-string: true
|
|
minSuccessTime:
|
|
default: "0"
|
|
description: |-
|
|
MinSuccessTime is a "soak" time. In other words, the minimum amount of time the workload
|
|
applier controller will wait from the start of each rollout before proceeding (assuming a
|
|
successful state has been reached and MaxFailures wasn't breached).
|
|
MinSuccessTime is only considered for rollout types Progressive and ProgressivePerGroup.
|
|
The default value is 0 meaning the workload applier proceeds immediately after a successful
|
|
state is reached.
|
|
MinSuccessTime must be defined in [0-9h]|[0-9m]|[0-9s] format examples; 2h , 90m , 360s
|
|
type: string
|
|
progressDeadline:
|
|
default: None
|
|
description: |-
|
|
ProgressDeadline defines how long workload applier controller will wait for the workload to
|
|
reach a successful state in the cluster.
|
|
If the workload does not reach a successful state after ProgressDeadline, will stop waiting
|
|
and workload will be treated as "timeout" and be counted into MaxFailures. Once the MaxFailures
|
|
is breached, the rollout will stop.
|
|
ProgressDeadline default value is "None", meaning the workload applier will wait for a
|
|
successful state indefinitely.
|
|
ProgressDeadline must be defined in [0-9h]|[0-9m]|[0-9s] format examples; 2h , 90m , 360s
|
|
pattern: ^(([0-9])+[h|m|s])|None$
|
|
type: string
|
|
type: object
|
|
progressive:
|
|
description: Progressive defines required fields for
|
|
RolloutStrategy type Progressive
|
|
properties:
|
|
mandatoryDecisionGroups:
|
|
description: |-
|
|
List of the decision groups names or indexes to apply the workload first and fail if workload
|
|
did not reach successful state.
|
|
GroupName or GroupIndex must match with the decisionGroups defined in the placement's
|
|
decisionStrategy
|
|
items:
|
|
description: |-
|
|
MandatoryDecisionGroup set the decision group name or group index.
|
|
GroupName is considered first to select the decisionGroups then GroupIndex.
|
|
properties:
|
|
groupIndex:
|
|
description: |-
|
|
GroupIndex of the decision group should match the placementDecisions label value with label key
|
|
cluster.open-cluster-management.io/decision-group-index
|
|
format: int32
|
|
type: integer
|
|
groupName:
|
|
description: |-
|
|
GroupName of the decision group should match the placementDecisions label value with label key
|
|
cluster.open-cluster-management.io/decision-group-name
|
|
type: string
|
|
type: object
|
|
type: array
|
|
maxConcurrency:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
description: |-
|
|
MaxConcurrency is the max number of clusters to deploy workload concurrently. The default value
|
|
for MaxConcurrency is determined from the clustersPerDecisionGroup defined in the
|
|
placement->DecisionStrategy.
|
|
pattern: ^((100|[0-9]{1,2})%|[0-9]+)$
|
|
x-kubernetes-int-or-string: true
|
|
maxFailures:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
default: 0
|
|
description: |-
|
|
MaxFailures is a percentage or number of clusters in the current rollout that can fail before
|
|
proceeding to the next rollout. Fail means the cluster has a failed status or timeout status
|
|
(does not reach successful status after ProgressDeadline).
|
|
Once the MaxFailures is breached, the rollout will stop.
|
|
MaxFailures is only considered for rollout types Progressive and ProgressivePerGroup. For
|
|
Progressive, this is considered over the total number of clusters. For ProgressivePerGroup,
|
|
this is considered according to the size of the current group. For both Progressive and
|
|
ProgressivePerGroup, the MaxFailures does not apply for MandatoryDecisionGroups, which tolerate
|
|
no failures.
|
|
Default is that no failures are tolerated.
|
|
pattern: ^((100|[0-9]{1,2})%|[0-9]+)$
|
|
x-kubernetes-int-or-string: true
|
|
minSuccessTime:
|
|
default: "0"
|
|
description: |-
|
|
MinSuccessTime is a "soak" time. In other words, the minimum amount of time the workload
|
|
applier controller will wait from the start of each rollout before proceeding (assuming a
|
|
successful state has been reached and MaxFailures wasn't breached).
|
|
MinSuccessTime is only considered for rollout types Progressive and ProgressivePerGroup.
|
|
The default value is 0 meaning the workload applier proceeds immediately after a successful
|
|
state is reached.
|
|
MinSuccessTime must be defined in [0-9h]|[0-9m]|[0-9s] format examples; 2h , 90m , 360s
|
|
type: string
|
|
progressDeadline:
|
|
default: None
|
|
description: |-
|
|
ProgressDeadline defines how long workload applier controller will wait for the workload to
|
|
reach a successful state in the cluster.
|
|
If the workload does not reach a successful state after ProgressDeadline, will stop waiting
|
|
and workload will be treated as "timeout" and be counted into MaxFailures. Once the MaxFailures
|
|
is breached, the rollout will stop.
|
|
ProgressDeadline default value is "None", meaning the workload applier will wait for a
|
|
successful state indefinitely.
|
|
ProgressDeadline must be defined in [0-9h]|[0-9m]|[0-9s] format examples; 2h , 90m , 360s
|
|
pattern: ^(([0-9])+[h|m|s])|None$
|
|
type: string
|
|
type: object
|
|
progressivePerGroup:
|
|
description: ProgressivePerGroup defines required fields
|
|
for RolloutStrategy type ProgressivePerGroup
|
|
properties:
|
|
mandatoryDecisionGroups:
|
|
description: |-
|
|
List of the decision groups names or indexes to apply the workload first and fail if workload
|
|
did not reach successful state.
|
|
GroupName or GroupIndex must match with the decisionGroups defined in the placement's
|
|
decisionStrategy
|
|
items:
|
|
description: |-
|
|
MandatoryDecisionGroup set the decision group name or group index.
|
|
GroupName is considered first to select the decisionGroups then GroupIndex.
|
|
properties:
|
|
groupIndex:
|
|
description: |-
|
|
GroupIndex of the decision group should match the placementDecisions label value with label key
|
|
cluster.open-cluster-management.io/decision-group-index
|
|
format: int32
|
|
type: integer
|
|
groupName:
|
|
description: |-
|
|
GroupName of the decision group should match the placementDecisions label value with label key
|
|
cluster.open-cluster-management.io/decision-group-name
|
|
type: string
|
|
type: object
|
|
type: array
|
|
maxFailures:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
default: 0
|
|
description: |-
|
|
MaxFailures is a percentage or number of clusters in the current rollout that can fail before
|
|
proceeding to the next rollout. Fail means the cluster has a failed status or timeout status
|
|
(does not reach successful status after ProgressDeadline).
|
|
Once the MaxFailures is breached, the rollout will stop.
|
|
MaxFailures is only considered for rollout types Progressive and ProgressivePerGroup. For
|
|
Progressive, this is considered over the total number of clusters. For ProgressivePerGroup,
|
|
this is considered according to the size of the current group. For both Progressive and
|
|
ProgressivePerGroup, the MaxFailures does not apply for MandatoryDecisionGroups, which tolerate
|
|
no failures.
|
|
Default is that no failures are tolerated.
|
|
pattern: ^((100|[0-9]{1,2})%|[0-9]+)$
|
|
x-kubernetes-int-or-string: true
|
|
minSuccessTime:
|
|
default: "0"
|
|
description: |-
|
|
MinSuccessTime is a "soak" time. In other words, the minimum amount of time the workload
|
|
applier controller will wait from the start of each rollout before proceeding (assuming a
|
|
successful state has been reached and MaxFailures wasn't breached).
|
|
MinSuccessTime is only considered for rollout types Progressive and ProgressivePerGroup.
|
|
The default value is 0 meaning the workload applier proceeds immediately after a successful
|
|
state is reached.
|
|
MinSuccessTime must be defined in [0-9h]|[0-9m]|[0-9s] format examples; 2h , 90m , 360s
|
|
type: string
|
|
progressDeadline:
|
|
default: None
|
|
description: |-
|
|
ProgressDeadline defines how long workload applier controller will wait for the workload to
|
|
reach a successful state in the cluster.
|
|
If the workload does not reach a successful state after ProgressDeadline, will stop waiting
|
|
and workload will be treated as "timeout" and be counted into MaxFailures. Once the MaxFailures
|
|
is breached, the rollout will stop.
|
|
ProgressDeadline default value is "None", meaning the workload applier will wait for a
|
|
successful state indefinitely.
|
|
ProgressDeadline must be defined in [0-9h]|[0-9m]|[0-9s] format examples; 2h , 90m , 360s
|
|
pattern: ^(([0-9])+[h|m|s])|None$
|
|
type: string
|
|
type: object
|
|
type:
|
|
default: All
|
|
enum:
|
|
- All
|
|
- Progressive
|
|
- ProgressivePerGroup
|
|
type: string
|
|
type: object
|
|
required:
|
|
- name
|
|
- namespace
|
|
type: object
|
|
type: array
|
|
x-kubernetes-list-map-keys:
|
|
- namespace
|
|
- name
|
|
x-kubernetes-list-type: map
|
|
type:
|
|
default: Manual
|
|
description: |-
|
|
Type is the type of the install strategy, it can be:
|
|
- Manual: no automatic install
|
|
- Placements: install to clusters selected by placements.
|
|
enum:
|
|
- Manual
|
|
- Placements
|
|
type: string
|
|
type: object
|
|
supportedConfigs:
|
|
description: |-
|
|
supportedConfigs is a list of configuration types supported by add-on.
|
|
An empty list means the add-on does not require configurations.
|
|
The default is an empty list
|
|
items:
|
|
description: ConfigMeta represents a collection of metadata information
|
|
for add-on configuration.
|
|
properties:
|
|
defaultConfig:
|
|
description: |-
|
|
defaultConfig represents the namespace and name of the default add-on configuration.
|
|
In scenario where all add-ons have a same configuration.
|
|
properties:
|
|
name:
|
|
description: name of the add-on configuration.
|
|
minLength: 1
|
|
type: string
|
|
namespace:
|
|
description: |-
|
|
namespace of the add-on configuration.
|
|
If this field is not set, the configuration is in the cluster scope.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
group:
|
|
default: ""
|
|
description: group of the add-on configuration.
|
|
type: string
|
|
resource:
|
|
description: resource of the add-on configuration.
|
|
minLength: 1
|
|
type: string
|
|
required:
|
|
- resource
|
|
type: object
|
|
type: array
|
|
x-kubernetes-list-map-keys:
|
|
- group
|
|
- resource
|
|
x-kubernetes-list-type: map
|
|
type: object
|
|
status:
|
|
description: status represents the current status of cluster management
|
|
add-on.
|
|
properties:
|
|
defaultconfigReferences:
|
|
description: defaultconfigReferences is a list of current add-on default
|
|
configuration references.
|
|
items:
|
|
description: |-
|
|
DefaultConfigReference is a reference to the current add-on configuration.
|
|
This resource is used to record the configuration resource for the current add-on.
|
|
properties:
|
|
desiredConfig:
|
|
description: desiredConfig record the desired config spec hash.
|
|
properties:
|
|
name:
|
|
description: name of the add-on configuration.
|
|
minLength: 1
|
|
type: string
|
|
namespace:
|
|
description: |-
|
|
namespace of the add-on configuration.
|
|
If this field is not set, the configuration is in the cluster scope.
|
|
type: string
|
|
specHash:
|
|
description: spec hash for an add-on configuration.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
group:
|
|
default: ""
|
|
description: group of the add-on configuration.
|
|
type: string
|
|
resource:
|
|
description: resource of the add-on configuration.
|
|
minLength: 1
|
|
type: string
|
|
required:
|
|
- resource
|
|
type: object
|
|
type: array
|
|
installProgressions:
|
|
description: installProgression is a list of current add-on configuration
|
|
references per placement.
|
|
items:
|
|
properties:
|
|
conditions:
|
|
description: conditions describe the state of the managed and
|
|
monitored components for the operator.
|
|
items:
|
|
description: Condition contains details for one aspect of
|
|
the current state of this API Resource.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: |-
|
|
lastTransitionTime is the last time the condition transitioned from one status to another.
|
|
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: |-
|
|
message is a human readable message indicating details about the transition.
|
|
This may be an empty string.
|
|
maxLength: 32768
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
observedGeneration represents the .metadata.generation that the condition was set based upon.
|
|
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
|
|
with respect to the current state of the instance.
|
|
format: int64
|
|
minimum: 0
|
|
type: integer
|
|
reason:
|
|
description: |-
|
|
reason contains a programmatic identifier indicating the reason for the condition's last transition.
|
|
Producers of specific condition types may define expected values and meanings for this field,
|
|
and whether the values are considered a guaranteed API.
|
|
The value should be a CamelCase string.
|
|
This field may not be empty.
|
|
maxLength: 1024
|
|
minLength: 1
|
|
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
|
|
type: string
|
|
status:
|
|
description: status of the condition, one of True, False,
|
|
Unknown.
|
|
enum:
|
|
- "True"
|
|
- "False"
|
|
- Unknown
|
|
type: string
|
|
type:
|
|
description: type of condition in CamelCase or in foo.example.com/CamelCase.
|
|
maxLength: 316
|
|
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
|
|
type: string
|
|
required:
|
|
- lastTransitionTime
|
|
- message
|
|
- reason
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
configReferences:
|
|
description: configReferences is a list of current add-on configuration
|
|
references.
|
|
items:
|
|
description: |-
|
|
InstallConfigReference is a reference to the current add-on configuration.
|
|
This resource is used to record the configuration resource for the current add-on.
|
|
properties:
|
|
desiredConfig:
|
|
description: desiredConfig record the desired config name
|
|
and spec hash.
|
|
properties:
|
|
name:
|
|
description: name of the add-on configuration.
|
|
minLength: 1
|
|
type: string
|
|
namespace:
|
|
description: |-
|
|
namespace of the add-on configuration.
|
|
If this field is not set, the configuration is in the cluster scope.
|
|
type: string
|
|
specHash:
|
|
description: spec hash for an add-on configuration.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
group:
|
|
default: ""
|
|
description: group of the add-on configuration.
|
|
type: string
|
|
lastAppliedConfig:
|
|
description: |-
|
|
lastAppliedConfig records the config spec hash when the all the corresponding
|
|
ManagedClusterAddOn are applied successfully.
|
|
properties:
|
|
name:
|
|
description: name of the add-on configuration.
|
|
minLength: 1
|
|
type: string
|
|
namespace:
|
|
description: |-
|
|
namespace of the add-on configuration.
|
|
If this field is not set, the configuration is in the cluster scope.
|
|
type: string
|
|
specHash:
|
|
description: spec hash for an add-on configuration.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
lastKnownGoodConfig:
|
|
description: |-
|
|
lastKnownGoodConfig records the last known good config spec hash.
|
|
For fresh install or rollout with type UpdateAll or RollingUpdate, the
|
|
lastKnownGoodConfig is the same as lastAppliedConfig.
|
|
For rollout with type RollingUpdateWithCanary, the lastKnownGoodConfig
|
|
is the last successfully applied config spec hash of the canary placement.
|
|
properties:
|
|
name:
|
|
description: name of the add-on configuration.
|
|
minLength: 1
|
|
type: string
|
|
namespace:
|
|
description: |-
|
|
namespace of the add-on configuration.
|
|
If this field is not set, the configuration is in the cluster scope.
|
|
type: string
|
|
specHash:
|
|
description: spec hash for an add-on configuration.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
resource:
|
|
description: resource of the add-on configuration.
|
|
minLength: 1
|
|
type: string
|
|
required:
|
|
- resource
|
|
type: object
|
|
type: array
|
|
name:
|
|
description: Name is the name of the placement
|
|
minLength: 1
|
|
type: string
|
|
namespace:
|
|
description: Namespace is the namespace of the placement
|
|
minLength: 1
|
|
type: string
|
|
required:
|
|
- name
|
|
- namespace
|
|
type: object
|
|
type: array
|
|
type: object
|
|
required:
|
|
- spec
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
status:
|
|
acceptedNames:
|
|
kind: ""
|
|
plural: ""
|
|
conditions: []
|
|
storedVersions: []
|