@@ -17,17 +17,18 @@ spec:
1717 scope : Namespaced
1818 versions :
1919 - additionalPrinterColumns :
20- - jsonPath : .spec.apiVersion
20+ - jsonPath : .spec.schema. apiVersion
2121 name : APIVERSION
2222 type : string
23- - jsonPath : .spec.kind
23+ - jsonPath : .spec.schema. kind
2424 name : KIND
2525 type : string
2626 - jsonPath : .status.state
2727 name : STATE
2828 type : string
2929 - jsonPath : .status.topologicalOrder
3030 name : TOPOLOGICALORDER
31+ priority : 1
3132 type : string
3233 - jsonPath : .metadata.creationTimestamp
3334 name : AGE
@@ -57,43 +58,87 @@ spec:
5758 spec :
5859 description : ResourceGroupSpec defines the desired state of ResourceGroup
5960 properties :
60- apiVersion :
61- type : string
62- definition :
61+ defaultServiceAccounts :
62+ additionalProperties :
63+ type : string
64+ description : |-
65+ ServiceAccount configuration for controller impersonation.
66+ Key is the namespace, value is the service account name to use.
67+ Special key "*" defines the default service account for any
68+ namespace not explicitly mapped.
69+ type : object
70+ resources :
71+ description : The resources that are part of the resourcegroup.
72+ items :
73+ properties :
74+ id :
75+ type : string
76+ includeWhen :
77+ items :
78+ type : string
79+ type : array
80+ readyWhen :
81+ items :
82+ type : string
83+ type : array
84+ template :
85+ type : object
86+ x-kubernetes-preserve-unknown-fields : true
87+ required :
88+ - id
89+ - template
90+ type : object
91+ type : array
92+ schema :
93+ description : |-
94+ The schema of the resourcegroup, which includes the
95+ apiVersion, kind, spec, status, types, and some validation
96+ rules.
6397 properties :
98+ apiVersion :
99+ description : |-
100+ The APIVersion of the resourcegroup. This is used to generate
101+ and create the CRD for the resourcegroup.
102+ type : string
103+ x-kubernetes-validations :
104+ - message : apiVersion is immutable
105+ rule : self == oldSelf
106+ kind :
107+ description : |-
108+ The kind of the resourcegroup. This is used to generate
109+ and create the CRD for the resourcegroup.
110+ type : string
111+ x-kubernetes-validations :
112+ - message : kind is immutable
113+ rule : self == oldSelf
64114 spec :
115+ description : |-
116+ The spec of the resourcegroup. Typically, this is the spec of
117+ the CRD that the resourcegroup is managing. This is adhering
118+ to the SimpleSchema spec
65119 type : object
66120 x-kubernetes-preserve-unknown-fields : true
67121 status :
68- type : object
69- x-kubernetes-preserve-unknown-fields : true
70- types :
122+ description : |-
123+ The status of the resourcegroup. This is the status of the CRD
124+ that the resourcegroup is managing. This is adhering to the
125+ SimpleSchema spec.
71126 type : object
72127 x-kubernetes-preserve-unknown-fields : true
73128 validation :
129+ description : |-
130+ Validation is a list of validation rules that are applied to the
131+ resourcegroup.
132+ Not implemented yet.
74133 items :
75134 type : string
76135 type : array
136+ required :
137+ - apiVersion
138+ - kind
77139 type : object
78- kind :
79- type : string
80- resources :
81- items :
82- properties :
83- definition :
84- type : object
85- x-kubernetes-preserve-unknown-fields : true
86- name :
87- type : string
88- required :
89- - definition
90- - name
91- type : object
92- type : array
93140 required :
94- - apiVersion
95- - definition
96- - kind
141+ - schema
97142 type : object
98143 status :
99144 description : ResourceGroupStatus defines the observed state of ResourceGroup
@@ -138,6 +183,34 @@ spec:
138183 - type
139184 type : object
140185 type : array
186+ resources :
187+ description : Resources represents the resources, and their information
188+ (dependencies for now)
189+ items :
190+ description : |-
191+ ResourceInformation defines the information about a resource
192+ in the resourcegroup
193+ properties :
194+ dependencies :
195+ description : Dependencies represents the resource dependencies
196+ of a resource group
197+ items :
198+ description : |-
199+ Dependency defines the dependency a resource has observed
200+ from the resources it points to based on expressions
201+ properties :
202+ name :
203+ description : Name represents the name of the dependency
204+ resource
205+ type : string
206+ type : object
207+ type : array
208+ name :
209+ description : Name represents the name of the resources we're
210+ providing information for
211+ type : string
212+ type : object
213+ type : array
141214 state :
142215 description : State is the state of the resourcegroup
143216 type : string
0 commit comments