Skip to content

Commit 4af2ff4

Browse files
committed
removed conditions field
Signed-off-by: Bharath Nallapeta <[email protected]>
1 parent bc2097f commit 4af2ff4

File tree

1 file changed

+4
-47
lines changed

1 file changed

+4
-47
lines changed

docs/proposals/20250722-openstackclusteridentity.md

Lines changed: 4 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,9 @@ As an administrator managing clusters across multiple OpenStack regions, I want
4343

4444
```go
4545
type OpenStackClusterIdentity struct {
46-
metav1.TypeMeta `json:",inline"`
46+
metav1.TypeMeta `json:",inline"`
4747
metav1.ObjectMeta `json:"metadata,omitempty"`
48-
Spec OpenStackClusterIdentitySpec `json:"spec,omitempty"`
49-
Status OpenStackClusterIdentityStatus `json:"status,omitempty"`
48+
Spec OpenStackClusterIdentitySpec `json:"spec,omitempty"`
5049
}
5150

5251
type OpenStackClusterIdentitySpec struct {
@@ -63,10 +62,6 @@ type OpenStackCredentialSecretReference struct {
6362
Name string `json:"name"`
6463
Namespace string `json:"namespace"`
6564
}
66-
67-
type OpenStackClusterIdentityStatus struct {
68-
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
69-
}
7065
```
7166

7267
#### Enhanced OpenStackIdentityReference (Discriminated Union)
@@ -87,7 +82,7 @@ type OpenStackIdentityReference struct {
8782
// +optional
8883
Name string `json:"name,omitempty"`
8984

90-
// CloudName required for Secret type, ignored for ClusterIdentity type
85+
// CloudName required for Secret type, forbidden for ClusterIdentity type
9186
// +optional
9287
CloudName string `json:"cloudName,omitempty"`
9388

@@ -188,7 +183,7 @@ type OpenStackIdentityReference struct {
188183
// +optional
189184
Name string `json:"name,omitempty"`
190185

191-
// CloudName required for Secret type, ignored for ClusterIdentity type
186+
// CloudName required for Secret type, forbidden for ClusterIdentity type
192187
// +optional
193188
CloudName string `json:"cloudName,omitempty"`
194189

@@ -343,42 +338,4 @@ This change automatically enables cluster identity support for:
343338
- `OpenStackMachine` resources
344339
- `OpenStackServer` resources
345340

346-
## Conditions
347-
348-
Following the existing CAPO pattern for simple resources (like OpenStackFloatingIPPool), the `OpenStackClusterIdentityStatus` uses a single condition:
349-
350-
- **Ready**: Indicates whether the identity can be used for authentication. This includes secret accessibility, structure validation, and credential validation. Different reason codes provide specific failure details.
351-
352-
### Example Condition States
353-
354-
**Secret not found:**
355-
```yaml
356-
status:
357-
conditions:
358-
- type: Ready
359-
status: "False"
360-
reason: SecretNotFound
361-
message: "Secret 'openstack-creds' not found in namespace 'capo-system'"
362-
```
363-
364-
**Authentication failure:**
365-
```yaml
366-
status:
367-
conditions:
368-
- type: Ready
369-
status: "False"
370-
reason: AuthenticationFailed
371-
message: "OpenStack authentication failed: invalid credentials for cloud 'openstack'"
372-
```
373-
374-
**Ready state:**
375-
```yaml
376-
status:
377-
conditions:
378-
- type: Ready
379-
status: "True"
380-
reason: CredentialsValid
381-
message: "OpenStack credentials validated successfully"
382-
```
383-
384341
This proposal provides centralized credential management while maintaining full backward compatibility and following established Kubernetes patterns (discriminated union).

0 commit comments

Comments
 (0)