d5bae868a4
core/env.py dual-read helper (D-108); 21 ACDL_*→NOVA_* env vars migrated across core/scripts/adapters/tests/workflows + .env/.env.secrets (key rename, values stay). G-106 binding: run_platform.sh:288-289 + regression_verify.py:309-312 dual-read (NOVA first, ACDL fallback). G-108 binding: Gitea NOVA_* secrets created via API + workflow secrets: refs updated (deploy.yml + modules-lifecycle.yml, .gitea + .github). acdl_tagging.py→nova_tagging.py (D-109 warn mode, nova:* enforced). .acdl/→.nova/ consumer path (resolver + deploy workflow + schema + tests + docs). Test fixtures updated; pytest + run_ci.sh PASS. ---ci--- project: acdl phase: 2 milestone: v1.15 status: execute ---/ci---
46 lines
1.8 KiB
JSON
46 lines
1.8 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://nova.dev/schemas/tagging-standard.json",
|
|
"title": "Nova Tagging Standard",
|
|
"description": "Required tags for all taggable AWS resources created by the platform. Enforced by a Checkov custom Python rule (adapters/terraform/policy/custom_rules/nova_tagging.py, D-109 warn mode in P2 — legacy acdl:* tag-key values are left for P3). The checkov adapter maps NOVA_TAG_NAMING as a real rule (D-054, D-043 closure; renamed from ACDL_TAG_NAMING in P2, REQ-158).",
|
|
"type": "object",
|
|
"properties": {
|
|
"required_tags": {
|
|
"type": "object",
|
|
"description": "The set of tags that must be present on every taggable AWS resource.",
|
|
"properties": {
|
|
"acdl:owner": {
|
|
"type": "string",
|
|
"description": "The consumer repository name (e.g. 'consumer-repo'). Injected from the ABAC session."
|
|
},
|
|
"acdl:contract": {
|
|
"type": "string",
|
|
"description": "The contract ID (UUID)."
|
|
},
|
|
"acdl:environment": {
|
|
"type": "string",
|
|
"enum": ["dev", "qa", "prod", "dr"],
|
|
"description": "The environment name."
|
|
},
|
|
"acdl:cost-center": {
|
|
"type": "string",
|
|
"description": "The cost center (consumer-provided or platform-default 'acdl-default')."
|
|
}
|
|
},
|
|
"required": ["acdl:owner", "acdl:contract", "acdl:environment", "acdl:cost-center"],
|
|
"additionalProperties": false
|
|
},
|
|
"default_values": {
|
|
"type": "object",
|
|
"description": "Default values used when the consumer does not supply the tag.",
|
|
"properties": {
|
|
"acdl:cost-center": {
|
|
"type": "string",
|
|
"default": "acdl-default"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"required": ["required_tags"],
|
|
"additionalProperties": false
|
|
} |