| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- {
- "$schema": "https://json-schema.org/draft/2020-12/schema",
- "title": "DataOps Edge Runtime File Configuration",
- "type": "object",
- "additionalProperties": false,
- "required": [
- "allowed_control_hosts",
- "allowed_control_origins",
- "allowed_proxy_hosts",
- "allowed_proxy_origins",
- "artifact_root",
- "ca_bundle_path",
- "certificate_sha256",
- "client_certificate_path",
- "client_private_key_path",
- "control_url",
- "environment",
- "gateway_id",
- "generation",
- "network_zone",
- "policy_digest",
- "proxy_url",
- "queue_path",
- "task_authority_clock_skew_seconds",
- "version"
- ],
- "properties": {
- "allowed_control_hosts": {
- "type": "array",
- "minItems": 1,
- "maxItems": 32,
- "uniqueItems": true,
- "items": {"type": "string", "pattern": "^[a-z0-9][a-z0-9.-]*[a-z0-9]$"}
- },
- "allowed_control_origins": {
- "type": "array",
- "minItems": 1,
- "maxItems": 32,
- "uniqueItems": true,
- "items": {"type": "string", "pattern": "^https://[^/]+$", "maxLength": 2048}
- },
- "allowed_proxy_hosts": {
- "type": "array",
- "maxItems": 32,
- "uniqueItems": true,
- "items": {"type": "string", "pattern": "^[a-z0-9][a-z0-9.-]*[a-z0-9]$"}
- },
- "allowed_proxy_origins": {
- "type": "array",
- "maxItems": 32,
- "uniqueItems": true,
- "items": {"type": "string", "pattern": "^https://[^/]+$", "maxLength": 2048}
- },
- "artifact_root": {"type": "string", "pattern": "^/", "maxLength": 2048},
- "ca_bundle_path": {"type": "string", "pattern": "^/", "maxLength": 2048},
- "certificate_sha256": {"type": "string", "pattern": "^[a-f0-9]{64}$"},
- "client_certificate_path": {"type": "string", "pattern": "^/", "maxLength": 2048},
- "client_private_key_path": {"type": "string", "pattern": "^/", "maxLength": 2048},
- "control_url": {"type": "string", "pattern": "^https://[^/]+$", "maxLength": 2048},
- "environment": {"type": "string", "enum": ["development", "staging", "production"]},
- "gateway_id": {"type": "string", "format": "uuid"},
- "generation": {"type": "integer", "minimum": 1, "maximum": 2147483647},
- "network_zone": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,254}$"},
- "policy_digest": {"type": "string", "pattern": "^[a-f0-9]{64}$"},
- "proxy_url": {
- "oneOf": [
- {"type": "null"},
- {"type": "string", "pattern": "^https://[^/]+$", "maxLength": 2048}
- ]
- },
- "queue_path": {"type": "string", "pattern": "^/", "maxLength": 2048},
- "task_authority_clock_skew_seconds": {"type": "integer", "minimum": 0, "maximum": 300},
- "version": {
- "type": "string",
- "pattern": "^(0|[1-9][0-9]{0,9})\\.(0|[1-9][0-9]{0,9})\\.(0|[1-9][0-9]{0,9})$"
- }
- }
- }
|