feat(scaffolder): implementing secrets schema for scaffolder templates (#32320)
* feat: implementing secrets schema for scaffolder templates Signed-off-by: benjdlambert <ben@blam.sh> * chore: fix and regenerate openapi Signed-off-by: benjdlambert <ben@blam.sh> Signed-off-by: benjdlambert <ben@blam.sh> * chore: fix review feedback Signed-off-by: benjdlambert <ben@blam.sh> * fix: address code review feedback for secrets validation - Extract validateSecrets helper to deduplicate validation logic - Add auditorEvent.fail() call on secrets validation failure - Sanitize instance field in error responses to prevent secret leakage - Add retry endpoint test coverage for secrets validation - Split changeset into per-package entries Signed-off-by: benjdlambert <ben@blam.sh> * refactor: nest secrets schema under secrets.schema Move the JSON Schema definition from spec.secrets to spec.secrets.schema to leave room for future extensions like secret sources. Signed-off-by: benjdlambert <ben@blam.sh> * chore: update API reports Signed-off-by: benjdlambert <ben@blam.sh> * chore: use InputError for secrets validation audit event Signed-off-by: benjdlambert <ben@blam.sh> --------- Signed-off-by: benjdlambert <ben@blam.sh>
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
---
|
||||
'@backstage/plugin-scaffolder-common': minor
|
||||
---
|
||||
|
||||
Added an optional `secrets` field to `TemplateEntityV1beta3` for configuring secrets validation. The schema for validating secrets is defined under `secrets.schema` as a JSON Schema object.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
'@backstage/plugin-scaffolder-backend': minor
|
||||
---
|
||||
|
||||
Added secrets schema validation for task creation, retry, and dry-run endpoints. When a template defines `spec.secrets.schema`, the API validates provided secrets against the schema and returns a `400` error if validation fails.
|
||||
Reference in New Issue
Block a user