Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions api/bases/cyborg.openstack.org_cyborgapis.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -501,6 +501,14 @@ spec:
status:
description: CyborgAPIStatus defines the observed state of CyborgAPI.
properties:
appliedInputSecretHash:
description: |-
AppliedInputSecretHash is the hash of the input Secret consumed by the
last StatefulSet rollout that has been confirmed ready. It is only
updated once the StatefulSet is observed to be running with this
input, so a parent CR can correlate readiness with a specific applied
input instead of relying on a possibly stale ReadyCondition.
type: string
conditions:
description: Conditions
items:
Expand Down
8 changes: 8 additions & 0 deletions api/bases/cyborg.openstack.org_cyborgconductors.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -321,6 +321,14 @@ spec:
status:
description: CyborgConductorStatus defines the observed state of CyborgConductor.
properties:
appliedInputSecretHash:
description: |-
AppliedInputSecretHash is the hash of the input Secret consumed by the
last StatefulSet rollout that has been confirmed ready. It is only
updated once the StatefulSet is observed to be running with this
input, so a parent CR can correlate readiness with a specific applied
input instead of relying on a possibly stale ReadyCondition.
type: string
conditions:
description: Conditions
items:
Expand Down
9 changes: 9 additions & 0 deletions api/bases/cyborg.openstack.org_cyborgs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -873,6 +873,15 @@ spec:
finalizer. Tracked so the controller can remove its finalizer from the
old secret when the openstack-operator rotates the reference.
type: string
appliedInputSecretHash:
description: |-
AppliedInputSecretHash is the hash of the top-level input Secret that
both CyborgAPI and CyborgConductor have confirmed applied and rolled
out with. It is only updated once both report readiness for this
input, so a higher-level control-plane CR can correlate Cyborg's
readiness with a specific applied input instead of relying on a
possibly stale ReadyCondition.
type: string
conditions:
description: Conditions
items:
Expand Down
9 changes: 9 additions & 0 deletions api/bases/nova.openstack.org_nova.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2944,6 +2944,15 @@ spec:
finalizer. Tracked so the controller can remove its finalizer from the
old secret when the openstack-operator rotates the reference.
type: string
appliedInputSecretHash:
description: |-
AppliedInputSecretHash is the hash of the top-level input Secret that
all of NovaAPI, NovaScheduler, NovaMetadata, and cell0 have confirmed
applied and rolled out with. It is only updated once all of them
report readiness for this input, so a higher-level control-plane CR
can correlate Nova's readiness with a specific applied input instead
of relying on a possibly stale ReadyCondition.
type: string
conditions:
description: Conditions
items:
Expand Down
8 changes: 8 additions & 0 deletions api/bases/nova.openstack.org_novaapis.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -581,6 +581,14 @@ spec:
status:
description: NovaAPIStatus defines the observed state of NovaAPI
properties:
appliedInputSecretHash:
description: |-
AppliedInputSecretHash is the hash of the input Secret consumed by the
last StatefulSet rollout that has been confirmed ready. It is only
updated once the StatefulSet is observed to be running with this
input, so a parent CR can correlate readiness with a specific applied
input instead of relying on a possibly stale ReadyCondition.
type: string
conditions:
description: Conditions
items:
Expand Down
9 changes: 9 additions & 0 deletions api/bases/nova.openstack.org_novacells.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1617,6 +1617,15 @@ spec:
status:
description: NovaCellStatus defines the observed state of NovaCell
properties:
appliedInputSecretHash:
description: |-
AppliedInputSecretHash is the hash of the per-cell input Secret that
all of this cell's child services (Conductor, Metadata, NoVNCProxy,
Compute) have confirmed applied and rolled out with. It is only
updated once all of them report readiness for this input, so the
top-level Nova CR can correlate this cell's readiness with a specific
applied input instead of relying on a possibly stale ReadyCondition.
type: string
conditions:
description: Conditions
items:
Expand Down
8 changes: 8 additions & 0 deletions api/bases/nova.openstack.org_novacomputes.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -370,6 +370,14 @@ spec:
status:
description: NovaComputeStatus defines the observed state of NovaCompute
properties:
appliedInputSecretHash:
description: |-
AppliedInputSecretHash is the hash of the input Secret consumed by the
last StatefulSet rollout that has been confirmed ready. It is only
updated once the StatefulSet is observed to be running with this
input, so a parent CR can correlate readiness with a specific applied
input instead of relying on a possibly stale ReadyCondition.
type: string
conditions:
description: Conditions
items:
Expand Down
8 changes: 8 additions & 0 deletions api/bases/nova.openstack.org_novaconductors.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -411,6 +411,14 @@ spec:
status:
description: NovaConductorStatus defines the observed state of NovaConductor
properties:
appliedInputSecretHash:
description: |-
AppliedInputSecretHash is the hash of the input Secret consumed by the
last StatefulSet rollout that has been confirmed ready. It is only
updated once the StatefulSet is observed to be running with this
input, so a parent CR can correlate readiness with a specific applied
input instead of relying on a possibly stale ReadyCondition.
type: string
conditions:
description: Conditions
items:
Expand Down
8 changes: 8 additions & 0 deletions api/bases/nova.openstack.org_novametadata.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -554,6 +554,14 @@ spec:
status:
description: NovaMetadataStatus defines the observed state of NovaMetadata
properties:
appliedInputSecretHash:
description: |-
AppliedInputSecretHash is the hash of the input Secret consumed by the
last StatefulSet rollout that has been confirmed ready. It is only
updated once the StatefulSet is observed to be running with this
input, so a parent CR can correlate readiness with a specific applied
input instead of relying on a possibly stale ReadyCondition.
type: string
conditions:
description: Conditions
items:
Expand Down
8 changes: 8 additions & 0 deletions api/bases/nova.openstack.org_novanovncproxies.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -537,6 +537,14 @@ spec:
status:
description: NovaNoVNCProxyStatus defines the observed state of NovaNoVNCProxy
properties:
appliedInputSecretHash:
description: |-
AppliedInputSecretHash is the hash of the input Secret consumed by the
last StatefulSet rollout that has been confirmed ready. It is only
updated once the StatefulSet is observed to be running with this
input, so a parent CR can correlate readiness with a specific applied
input instead of relying on a possibly stale ReadyCondition.
type: string
conditions:
description: Conditions
items:
Expand Down
8 changes: 8 additions & 0 deletions api/bases/nova.openstack.org_novaschedulers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -387,6 +387,14 @@ spec:
status:
description: NovaSchedulerStatus defines the observed state of NovaScheduler
properties:
appliedInputSecretHash:
description: |-
AppliedInputSecretHash is the hash of the input Secret consumed by the
last StatefulSet rollout that has been confirmed ready. It is only
updated once the StatefulSet is observed to be running with this
input, so a parent CR can correlate readiness with a specific applied
input instead of relying on a possibly stale ReadyCondition.
type: string
conditions:
description: Conditions
items:
Expand Down
8 changes: 8 additions & 0 deletions api/bases/placement.openstack.org_placementapis.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -562,6 +562,14 @@ spec:
finalizer. Tracked so the controller can remove its finalizer from the
old secret when the openstack-operator rotates the reference.
type: string
appliedInputSecretHash:
description: |-
AppliedInputSecretHash is the hash of the input Secret consumed by the
last Deployment rollout that has been confirmed ready. It is only
updated once the Deployment is observed to be running with this input,
so consumers can correlate readiness with a specific applied input
instead of relying on a possibly stale ReadyCondition.
type: string
conditions:
description: Conditions
items:
Expand Down
8 changes: 8 additions & 0 deletions api/cyborg/v1beta1/cyborg_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -137,6 +137,14 @@ type CyborgStatus struct {
// finalizer. Tracked so the controller can remove its finalizer from the
// old secret when the openstack-operator rotates the reference.
ApplicationCredentialSecret string `json:"applicationCredentialSecret,omitempty"`

// AppliedInputSecretHash is the hash of the top-level input Secret that
// both CyborgAPI and CyborgConductor have confirmed applied and rolled
// out with. It is only updated once both report readiness for this
// input, so a higher-level control-plane CR can correlate Cyborg's
// readiness with a specific applied input instead of relying on a
// possibly stale ReadyCondition.
AppliedInputSecretHash string `json:"appliedInputSecretHash,omitempty"`
}

// +kubebuilder:object:root=true
Expand Down
7 changes: 7 additions & 0 deletions api/cyborg/v1beta1/cyborgapi_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,13 @@ type CyborgAPIStatus struct {

// LastAppliedTopology - the last applied Topology
LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`

// AppliedInputSecretHash is the hash of the input Secret consumed by the
// last StatefulSet rollout that has been confirmed ready. It is only
// updated once the StatefulSet is observed to be running with this
// input, so a parent CR can correlate readiness with a specific applied
// input instead of relying on a possibly stale ReadyCondition.
AppliedInputSecretHash string `json:"appliedInputSecretHash,omitempty"`
}

// +kubebuilder:object:root=true
Expand Down
7 changes: 7 additions & 0 deletions api/cyborg/v1beta1/cyborgconductor_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,13 @@ type CyborgConductorStatus struct {

// LastAppliedTopology - the last applied Topology
LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`

// AppliedInputSecretHash is the hash of the input Secret consumed by the
// last StatefulSet rollout that has been confirmed ready. It is only
// updated once the StatefulSet is observed to be running with this
// input, so a parent CR can correlate readiness with a specific applied
// input instead of relying on a possibly stale ReadyCondition.
AppliedInputSecretHash string `json:"appliedInputSecretHash,omitempty"`
}

// +kubebuilder:object:root=true
Expand Down
8 changes: 8 additions & 0 deletions api/nova/v1beta1/nova_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -191,6 +191,14 @@ type NovaStatus struct {
// finalizer. Tracked so the controller can remove its finalizer from the
// old secret when the openstack-operator rotates the reference.
ApplicationCredentialSecret string `json:"applicationCredentialSecret,omitempty"`

// AppliedInputSecretHash is the hash of the top-level input Secret that
// all of NovaAPI, NovaScheduler, NovaMetadata, and cell0 have confirmed
// applied and rolled out with. It is only updated once all of them
// report readiness for this input, so a higher-level control-plane CR
// can correlate Nova's readiness with a specific applied input instead
// of relying on a possibly stale ReadyCondition.
AppliedInputSecretHash string `json:"appliedInputSecretHash,omitempty"`
}

//+kubebuilder:object:root=true
Expand Down
7 changes: 7 additions & 0 deletions api/nova/v1beta1/novaapi_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -207,6 +207,13 @@ type NovaAPIStatus struct {

// LastAppliedTopology - the last applied Topology
LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`

// AppliedInputSecretHash is the hash of the input Secret consumed by the
// last StatefulSet rollout that has been confirmed ready. It is only
// updated once the StatefulSet is observed to be running with this
// input, so a parent CR can correlate readiness with a specific applied
// input instead of relying on a possibly stale ReadyCondition.
AppliedInputSecretHash string `json:"appliedInputSecretHash,omitempty"`
}

//+kubebuilder:object:root=true
Expand Down
8 changes: 8 additions & 0 deletions api/nova/v1beta1/novacell_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -280,6 +280,14 @@ type NovaCellStatus struct {
// then the controller has not processed the latest changes injected by
// the openstack-operator in the top-level CR (e.g. the ContainerImage)
ObservedGeneration int64 `json:"observedGeneration,omitempty"`

// AppliedInputSecretHash is the hash of the per-cell input Secret that
// all of this cell's child services (Conductor, Metadata, NoVNCProxy,
// Compute) have confirmed applied and rolled out with. It is only
// updated once all of them report readiness for this input, so the
// top-level Nova CR can correlate this cell's readiness with a specific
// applied input instead of relying on a possibly stale ReadyCondition.
AppliedInputSecretHash string `json:"appliedInputSecretHash,omitempty"`
}

//+kubebuilder:object:root=true
Expand Down
7 changes: 7 additions & 0 deletions api/nova/v1beta1/novacompute_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,13 @@ type NovaComputeStatus struct {

// LastAppliedTopology - the last applied Topology
LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`

// AppliedInputSecretHash is the hash of the input Secret consumed by the
// last StatefulSet rollout that has been confirmed ready. It is only
// updated once the StatefulSet is observed to be running with this
// input, so a parent CR can correlate readiness with a specific applied
// input instead of relying on a possibly stale ReadyCondition.
AppliedInputSecretHash string `json:"appliedInputSecretHash,omitempty"`
}

// NovaComputeCellStatus defines state of NovaCompute in cell
Expand Down
9 changes: 8 additions & 1 deletion api/nova/v1beta1/novaconductor_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,13 @@ type NovaConductorStatus struct {

// LastAppliedTopology - the last applied Topology
LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`

// AppliedInputSecretHash is the hash of the input Secret consumed by the
// last StatefulSet rollout that has been confirmed ready. It is only
// updated once the StatefulSet is observed to be running with this
// input, so a parent CR can correlate readiness with a specific applied
// input instead of relying on a possibly stale ReadyCondition.
AppliedInputSecretHash string `json:"appliedInputSecretHash,omitempty"`
}

//+kubebuilder:object:root=true
Expand Down Expand Up @@ -238,7 +245,7 @@ func NewNovaConductorSpec(
Resources: novaCell.ConductorServiceTemplate.Resources,
NetworkAttachments: novaCell.ConductorServiceTemplate.NetworkAttachments,
},
Override: novaCell.ConductorServiceTemplate.Override,
Override: novaCell.ConductorServiceTemplate.Override,
KeystoneAuthURL: novaCell.KeystoneAuthURL,
ServiceUser: novaCell.ServiceUser,
Region: novaCell.Region,
Expand Down
7 changes: 7 additions & 0 deletions api/nova/v1beta1/novametadata_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -225,6 +225,13 @@ type NovaMetadataStatus struct {

// LastAppliedTopology - the last applied Topology
LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`

// AppliedInputSecretHash is the hash of the input Secret consumed by the
// last StatefulSet rollout that has been confirmed ready. It is only
// updated once the StatefulSet is observed to be running with this
// input, so a parent CR can correlate readiness with a specific applied
// input instead of relying on a possibly stale ReadyCondition.
AppliedInputSecretHash string `json:"appliedInputSecretHash,omitempty"`
}

//+kubebuilder:object:root=true
Expand Down
7 changes: 7 additions & 0 deletions api/nova/v1beta1/novanovncproxy_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,13 @@ type NovaNoVNCProxyStatus struct {

// LastAppliedTopology - the last applied Topology
LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`

// AppliedInputSecretHash is the hash of the input Secret consumed by the
// last StatefulSet rollout that has been confirmed ready. It is only
// updated once the StatefulSet is observed to be running with this
// input, so a parent CR can correlate readiness with a specific applied
// input instead of relying on a possibly stale ReadyCondition.
AppliedInputSecretHash string `json:"appliedInputSecretHash,omitempty"`
}

//+kubebuilder:object:root=true
Expand Down
7 changes: 7 additions & 0 deletions api/nova/v1beta1/novascheduler_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,13 @@ type NovaSchedulerStatus struct {

// LastAppliedTopology - the last applied Topology
LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`

// AppliedInputSecretHash is the hash of the input Secret consumed by the
// last StatefulSet rollout that has been confirmed ready. It is only
// updated once the StatefulSet is observed to be running with this
// input, so a parent CR can correlate readiness with a specific applied
// input instead of relying on a possibly stale ReadyCondition.
AppliedInputSecretHash string `json:"appliedInputSecretHash,omitempty"`
}

//+kubebuilder:object:root=true
Expand Down
9 changes: 8 additions & 1 deletion api/placement/v1beta1/api_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ package v1beta1

import (
topologyv1 "github.com/openstack-k8s-operators/infra-operator/apis/topology/v1beta1"
condition "github.com/openstack-k8s-operators/lib-common/modules/common/condition"
condition "github.com/openstack-k8s-operators/lib-common/modules/common/condition"
"github.com/openstack-k8s-operators/lib-common/modules/common/probes"
"github.com/openstack-k8s-operators/lib-common/modules/common/service"
"github.com/openstack-k8s-operators/lib-common/modules/common/tls"
Expand Down Expand Up @@ -191,6 +191,13 @@ type PlacementAPIStatus struct {
// finalizer. Tracked so the controller can remove its finalizer from the
// old secret when the openstack-operator rotates the reference.
ApplicationCredentialSecret string `json:"applicationCredentialSecret,omitempty"`

// AppliedInputSecretHash is the hash of the input Secret consumed by the
// last Deployment rollout that has been confirmed ready. It is only
// updated once the Deployment is observed to be running with this input,
// so consumers can correlate readiness with a specific applied input
// instead of relying on a possibly stale ReadyCondition.
AppliedInputSecretHash string `json:"appliedInputSecretHash,omitempty"`
}

// PlacementAPI is the Schema for the placementapis API
Expand Down
8 changes: 8 additions & 0 deletions config/crd/bases/cyborg.openstack.org_cyborgapis.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -501,6 +501,14 @@ spec:
status:
description: CyborgAPIStatus defines the observed state of CyborgAPI.
properties:
appliedInputSecretHash:
description: |-
AppliedInputSecretHash is the hash of the input Secret consumed by the
last StatefulSet rollout that has been confirmed ready. It is only
updated once the StatefulSet is observed to be running with this
input, so a parent CR can correlate readiness with a specific applied
input instead of relying on a possibly stale ReadyCondition.
type: string
conditions:
description: Conditions
items:
Expand Down
Loading
Loading