OPA/Rego deployment gateway policies: 5 rules (valid-environment, require-approvals, no-self-approval, block-weekends, freeze-window), a deploy-gate combining them, JSON schemas, scenario-driven tests, Gitea Actions CI (verify + publish to generic registry), changesets versioning, Makefile and scripts.
45 lines
1.1 KiB
JSON
45 lines
1.1 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"deploygate": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"properties": {
|
|
"config": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "object",
|
|
"additionalProperties": true
|
|
}
|
|
},
|
|
"freeze_windows": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"required": ["environment", "start", "end"],
|
|
"properties": {
|
|
"environment": {"type": "string"},
|
|
"start": {"type": "string", "format": "date-time"},
|
|
"end": {"type": "string", "format": "date-time"}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"rules": {
|
|
"type": "object",
|
|
"additionalProperties": true
|
|
},
|
|
"gate": {
|
|
"type": "object",
|
|
"additionalProperties": true
|
|
},
|
|
"scenarios": {
|
|
"type": "object",
|
|
"additionalProperties": true
|
|
}
|
|
}
|
|
} |