97691fd752
---ci--- project: nova-platform phase: 1 milestone: v1.0 status: complete phase_role: execution ---/ci--- P1 complete: contract schema, stack schema, environment schema, resolver, env_check, 10 sample contracts, 36 tests. REQ-01..06, 23..28 covered.
60 lines
1.7 KiB
JSON
60 lines
1.7 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://nova.cloudinit.dev/schemas/environment.schema.json",
|
|
"title": "Nova Platform-Managed Environment",
|
|
"description": "Environment record. Simplified per D-017/D-018 (drops runner_role_arn/autonomy/confidence_threshold — OOS).",
|
|
"type": "object",
|
|
"required": ["name", "account_id", "region", "state_backend", "network"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Environment name (dev, qa, prod, dr)."
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"description": "Optional human-readable description."
|
|
},
|
|
"account_id": {
|
|
"type": "string",
|
|
"pattern": "^[0-9]{12}$",
|
|
"description": "12-digit AWS account ID. Placeholder 000000000000 allowed for offline/dev."
|
|
},
|
|
"region": {
|
|
"type": "string",
|
|
"description": "AWS region (e.g. us-east-1)."
|
|
},
|
|
"state_backend": {
|
|
"type": "object",
|
|
"required": ["bucket", "lock_table"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"bucket": {
|
|
"type": "string",
|
|
"description": "S3 state bucket name."
|
|
},
|
|
"lock_table": {
|
|
"type": "string",
|
|
"description": "DynamoDB lock table name."
|
|
}
|
|
}
|
|
},
|
|
"network": {
|
|
"type": "object",
|
|
"required": ["vpc_cidr", "azs"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"vpc_cidr": {
|
|
"type": "string",
|
|
"description": "VPC CIDR block."
|
|
},
|
|
"azs": {
|
|
"type": "array",
|
|
"maxItems": 6,
|
|
"items": {"type": "string"},
|
|
"description": "Availability zones."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |