Skip to content

Commit abbfd0f

Browse files
gtherondclaude
andcommitted
[1953] feat: populate Expiring/Expired Conditions for Application Credentials
Wires the App Credential helpers (#1953 prior commit) through the validation flow and controller status path: - pkg/common/validation/openstack: extends ValidationResult with an AppCred *utils.AppCredentialDetails field. validateFromCloudsYAML calls utils.FetchAppCredentialDetails after successful auth when auth_type is v3applicationcredential; populates result.AppCred when the metadata fetch succeeds, logs a non-fatal info message and leaves AppCred nil when the fetch is unavailable. - internal/controller/openstackcreds_controller: setConditionsForValidResult now takes the AppCred details and uses utils.EvaluateAppCredExpiration to set Expiring / Expired Conditions. Mapping: - expired -> Expired=True (Reason: Expired) - within 7 days -> Expiring=True (Reason: Within7Days) - within 30 days -> Expiring=True (Reason: Within30Days) - beyond / not App Cred -> Expiring=False, Expired=False (NotApplicable / Active) - internal/controller/openstackcreds_controller: setConditionsForInvalidResult drops the inline heuristic switch and uses utils.MapKeystoneError on the raw validation error. Typed gophercloud HTTP status codes win over string matching when available. Existing TestApplyValidationResult_ValidationFailure passes unchanged (MapKeystoneError preserves the existing Reason output for 401 and timeout error strings the test exercises). Implements FR-007 / FR-008 / FR-009. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent c80b4ab commit abbfd0f

10 files changed

Lines changed: 3597 additions & 3381 deletions

graphify-out/.graphify_labels.json

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -85,16 +85,19 @@
8585
"83": "Protobuf Service",
8686
"84": "Protobuf Service",
8787
"85": "Protobuf Service",
88+
"86": "Community 86",
8889
"87": "Protobuf Service",
8990
"88": "Controller Component",
9091
"89": "Component 89",
92+
"90": "Community 90",
9193
"91": "Utilities",
9294
"92": "Protobuf Service",
9395
"93": "Protobuf Service",
9496
"94": "Controller Component",
9597
"95": "CRD API Types",
9698
"96": "Controller Component",
9799
"97": "Controller Component",
100+
"98": "Community 98",
98101
"99": "Test Utilities",
99102
"100": "Test Utilities",
100103
"101": "Protobuf Service",
@@ -115,14 +118,14 @@
115118
"116": "OpenStack Component",
116119
"117": "Test Utilities",
117120
"118": "Controller Component",
121+
"119": "Community 119",
118122
"120": "Test Utilities",
119123
"121": "Utilities",
120124
"122": "Component 122",
121125
"123": "Protobuf Service",
122126
"124": "VMware Component",
123127
"125": "Protobuf Service",
124128
"126": "Protobuf Service",
125-
"127": "Community 127",
126129
"128": "Protobuf Service",
127130
"129": "Protobuf Service",
128131
"130": "Protobuf Service",
@@ -198,13 +201,18 @@
198201
"200": "Test Utilities",
199202
"201": "Protobuf Service",
200203
"202": "Protobuf Service",
204+
"203": "Community 203",
201205
"204": "Protobuf Service",
202206
"205": "Server Component",
203207
"206": "Protobuf Service",
208+
"207": "Community 207",
204209
"208": "Utilities",
205210
"209": "Component 209",
211+
"210": "Community 210",
206212
"211": "RBAC Manifests",
207213
"212": "Test Utilities",
214+
"213": "Community 213",
215+
"214": "Community 214",
208216
"215": "Keystone Auth",
209217
"216": "Keystone Auth",
210218
"217": "Config & Samples",
@@ -213,7 +221,5 @@
213221
"221": "Component 221",
214222
"222": "Community 222",
215223
"223": "Community 223",
216-
"224": "Community 224",
217-
"227": "Community 227",
218-
"231": "Community 231"
224+
"224": "Community 224"
219225
}

graphify-out/GRAPH_REPORT.md

Lines changed: 95 additions & 109 deletions
Large diffs are not rendered by default.

graphify-out/cache/ast/17a14629d1b606109bda909287117739ee4aafcecbb5bbf6a71de9785943a572.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

graphify-out/cache/ast/9279aca6d66f2bed83ce1f7c4a4122902f78ecfe27a75497022be38443669323.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

graphify-out/cache/ast/ed0c2efd9673d21432d24502011daa8bf3fd7e2f14c26f38000f8d0016a95f91.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

graphify-out/graph.html

Lines changed: 4 additions & 4 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)