Skip to content

release-channel

Generated reference page for spec/v1/schemas/resources/release-channel.json.

Metadata

  • Type: JSON Schema
  • Source: spec/v1/schemas/resources/release-channel.json
  • Raw: View Raw

Summary

Source

json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://agent-service.spec/v1/schemas/resources/release-channel.json",
  "$defs": {
    "ReleaseSelector": {
      "type": "object",
      "additionalProperties": false,
      "required": ["type"],
      "properties": {
        "type": {
          "type": "string",
          "enum": ["user", "header", "contextId", "env"]
        },
        "pattern": {
          "type": "string"
        },
        "headerKey": {
          "type": "string"
        },
        "envKey": {
          "type": "string"
        },
        "envValue": {
          "type": "string"
        }
      }
    },
    "ChannelRelease": {
      "type": "object",
      "additionalProperties": false,
      "required": ["revisionId"],
      "properties": {
        "revisionId": {
          "$ref": "../common/identity.json#/$defs/opaqueId"
        },
        "enabled": {
          "type": "boolean",
          "default": true
        },
        "weight": {
          "type": "integer",
          "minimum": 0,
          "maximum": 100
        },
        "priority": {
          "type": "integer"
        },
        "selectors": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ReleaseSelector"
          }
        }
      }
    }
  },
  "type": "object",
  "additionalProperties": false,
  "required": [
    "channelId",
    "orgId",
    "resourceType",
    "resourceId",
    "name",
    "status",
    "routingMode",
    "releases",
    "createdAt",
    "updatedAt"
  ],
  "properties": {
    "channelId": {
      "$ref": "../common/identity.json#/$defs/releaseChannelId"
    },
    "orgId": {
      "$ref": "../common/identity.json#/$defs/orgId"
    },
    "resourceType": {
      "$ref": "../common/enums.json#/$defs/taskResourceType"
    },
    "resourceId": {
      "$ref": "../common/identity.json#/$defs/opaqueId"
    },
    "name": {
      "type": "string",
      "minLength": 1
    },
    "description": {
      "type": "string"
    },
    "status": {
      "$ref": "../common/enums.json#/$defs/releaseChannelStatus"
    },
    "routingMode": {
      "$ref": "../common/enums.json#/$defs/releaseRoutingMode"
    },
    "currentRevisionId": {
      "$ref": "../common/identity.json#/$defs/opaqueId"
    },
    "releases": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ChannelRelease"
      }
    },
    "metadata": {
      "type": "object",
      "additionalProperties": true
    },
    "createdAt": {
      "$ref": "../common/identity.json#/$defs/timestamp"
    },
    "updatedAt": {
      "$ref": "../common/identity.json#/$defs/timestamp"
    },
    "version": {
      "$ref": "../common/identity.json#/$defs/version"
    }
  }
}

白皮书与规范内容以仓库真源为准。