generated from coulomb/repo-seed
99 lines
2.3 KiB
YAML
99 lines
2.3 KiB
YAML
$schema: "https://json-schema.org/draft/2020-12/schema"
|
|
$id: "https://railiance.local/fabric/schemas/interface.schema.yaml"
|
|
title: "InterfaceDeclaration"
|
|
type: object
|
|
additionalProperties: false
|
|
required:
|
|
- apiVersion
|
|
- kind
|
|
- metadata
|
|
- spec
|
|
properties:
|
|
apiVersion:
|
|
$ref: "./common.schema.yaml#/$defs/apiVersion"
|
|
kind:
|
|
type: string
|
|
const: InterfaceDeclaration
|
|
metadata:
|
|
$ref: "./common.schema.yaml#/$defs/metadata"
|
|
spec:
|
|
type: object
|
|
additionalProperties: false
|
|
required:
|
|
- lifecycle
|
|
- environments
|
|
- description
|
|
- interface_type
|
|
- version
|
|
- service_id
|
|
- auth
|
|
- data_classification
|
|
properties:
|
|
lifecycle:
|
|
$ref: "./common.schema.yaml#/$defs/lifecycle"
|
|
environments:
|
|
$ref: "./common.schema.yaml#/$defs/environments"
|
|
description:
|
|
type: string
|
|
minLength: 1
|
|
interface_type:
|
|
type: string
|
|
minLength: 1
|
|
version:
|
|
type: string
|
|
minLength: 1
|
|
service_id:
|
|
$ref: "./common.schema.yaml#/$defs/graphId"
|
|
capability_ids:
|
|
type: array
|
|
items:
|
|
$ref: "./common.schema.yaml#/$defs/graphId"
|
|
endpoint:
|
|
type: object
|
|
additionalProperties: false
|
|
properties:
|
|
url:
|
|
type: string
|
|
minLength: 1
|
|
path:
|
|
type: string
|
|
minLength: 1
|
|
notes:
|
|
type: string
|
|
minLength: 1
|
|
deployment_overlay:
|
|
$ref: "#/$defs/deploymentOverlay"
|
|
auth:
|
|
$ref: "./common.schema.yaml#/$defs/auth"
|
|
data_classification:
|
|
$ref: "./common.schema.yaml#/$defs/dataClassification"
|
|
compatibility:
|
|
$ref: "./common.schema.yaml#/$defs/compatibility"
|
|
|
|
$defs:
|
|
deploymentOverlay:
|
|
type: object
|
|
additionalProperties: false
|
|
properties:
|
|
deployment_environment:
|
|
type: string
|
|
deployment_scenario:
|
|
type: string
|
|
routing_authority:
|
|
type: string
|
|
access_zone:
|
|
type: string
|
|
policy_authority:
|
|
type: string
|
|
exposure_class:
|
|
type: string
|
|
route_evidence:
|
|
type: object
|
|
additionalProperties:
|
|
anyOf:
|
|
- type: string
|
|
- type: integer
|
|
- type: number
|
|
- type: boolean
|
|
- type: "null"
|