44#![ allow( clippy:: all) ]
55
66// WARNING: generated by kopium - manual changes will be overwritten
7- // kopium command: kopium --filename /tmp/tmp.QDCsdogj3f /doc1.yaml --derive Default --derive PartialEq --docs --smart-derive-elision
7+ // kopium command: kopium --filename /tmp/tmp.zSv7VR7Ryz /doc1.yaml --derive Default --derive PartialEq --docs --smart-derive-elision
88// kopium version: 0.23.0
99
1010#[ allow( unused_imports) ]
@@ -67,7 +67,7 @@ pub struct ResourceSetSpec {
6767 pub inputs_from : Option < Vec < ResourceSetInputsFrom > > ,
6868 /// Resources contains the list of Kubernetes resources to reconcile.
6969 #[ serde( default , skip_serializing_if = "Option::is_none" ) ]
70- pub resources : Option < Vec < serde_json:: Value > > ,
70+ pub resources : Option < Vec < BTreeMap < String , serde_json:: Value > > > ,
7171 /// ResourcesTemplate is a Go template that generates the list of
7272 /// Kubernetes resources to reconcile. The template is rendered
7373 /// as multi-document YAML, the resources should be separated by '---'.
@@ -87,6 +87,11 @@ pub struct ResourceSetSpec {
8787 rename = "serviceAccountName"
8888 ) ]
8989 pub service_account_name : Option < String > ,
90+ /// Steps contains an ordered list of named steps to reconcile in sequence.
91+ /// Each step's resources are applied and health-checked before the next
92+ /// step starts. Mutually exclusive with Resources and ResourcesTemplate.
93+ #[ serde( default , skip_serializing_if = "Option::is_none" ) ]
94+ pub steps : Option < Vec < ResourceSetSteps > > ,
9095 /// Wait instructs the controller to check the health
9196 /// of all the reconciled resources.
9297 #[ serde( default , skip_serializing_if = "Option::is_none" ) ]
@@ -250,6 +255,34 @@ pub struct ResourceSetInputsFromSelectorMatchExpressions {
250255 pub values : Option < Vec < String > > ,
251256}
252257
258+ /// ResourceSetStep defines a named step in the ResourceSet reconciliation
259+ /// sequence. The step's resources are applied and health-checked before
260+ /// the next step starts.
261+ #[ derive( Serialize , Deserialize , Clone , Debug , Default , PartialEq ) ]
262+ pub struct ResourceSetSteps {
263+ /// Name of the step, must be unique within the ResourceSet.
264+ pub name : String ,
265+ /// Resources contains the list of Kubernetes resources to reconcile.
266+ #[ serde( default , skip_serializing_if = "Option::is_none" ) ]
267+ pub resources : Option < Vec < BTreeMap < String , serde_json:: Value > > > ,
268+ /// ResourcesTemplate is a Go template that generates the list of
269+ /// Kubernetes resources to reconcile. The template is rendered
270+ /// as multi-document YAML, the resources should be separated by '---'.
271+ /// When both Resources and ResourcesTemplate are set, the resulting
272+ /// objects are merged and deduplicated, with the ones from Resources taking precedence.
273+ #[ serde(
274+ default ,
275+ skip_serializing_if = "Option::is_none" ,
276+ rename = "resourcesTemplate"
277+ ) ]
278+ pub resources_template : Option < String > ,
279+ /// Timeout is the maximum time to wait for the step's resources to
280+ /// become ready. When not set, the ResourceSet reconciliation
281+ /// timeout is used.
282+ #[ serde( default , skip_serializing_if = "Option::is_none" ) ]
283+ pub timeout : Option < String > ,
284+ }
285+
253286/// ResourceSetStatus defines the observed state of ResourceSet.
254287#[ derive( Serialize , Deserialize , Clone , Debug , Default , PartialEq ) ]
255288pub struct ResourceSetStatus {
0 commit comments