From b49178efb41afd6adaf792c0c98837c031c55a51 Mon Sep 17 00:00:00 2001 From: Alexander Mattoni <5110855+mattoni@users.noreply.github.com> Date: Tue, 5 Nov 2024 15:29:59 -0800 Subject: [PATCH] add extension to container instance --- .../containers/extension/ContainerExtension.yml | 14 ++++++++++++++ .../schemas/containers/instances/Instance.yml | 4 ++++ .../containers/summaries/ImageSummary.yml | 16 +++------------- 3 files changed, 21 insertions(+), 13 deletions(-) create mode 100644 components/schemas/containers/extension/ContainerExtension.yml diff --git a/components/schemas/containers/extension/ContainerExtension.yml b/components/schemas/containers/extension/ContainerExtension.yml new file mode 100644 index 00000000..b40c3fc0 --- /dev/null +++ b/components/schemas/containers/extension/ContainerExtension.yml @@ -0,0 +1,14 @@ +title: ContainerExtension +type: + - object + - "null" +description: Reference to container functionality that is added by the Cycle platform. +required: + - identifier +properties: + identifier: + type: string + enum: + - "virtual-machine-v1" + id: + $ref: ../../ID.yml \ No newline at end of file diff --git a/components/schemas/containers/instances/Instance.yml b/components/schemas/containers/instances/Instance.yml index 3ddcde00..5da6f7ae 100644 --- a/components/schemas/containers/instances/Instance.yml +++ b/components/schemas/containers/instances/Instance.yml @@ -80,6 +80,10 @@ properties: service: $ref: ../ServiceContainerIdentifier.yml description: The type of service this instance is within the environment, if any. + extension: + anyOf: + - $ref: ../extension/ContainerExtension.yml + - type: "null" state: $ref: InstanceState.yml autoscale: diff --git a/components/schemas/containers/summaries/ImageSummary.yml b/components/schemas/containers/summaries/ImageSummary.yml index a583c434..7150b34a 100644 --- a/components/schemas/containers/summaries/ImageSummary.yml +++ b/components/schemas/containers/summaries/ImageSummary.yml @@ -11,19 +11,9 @@ properties: - $ref: "../../ID.yml" - type: "null" extension: - type: - - object - - "null" - description: An image that is packaged with Cycle directly, such as the global load balancer. - required: - - identifier - properties: - identifier: - type: string - enum: - - "virtual-machine-v1" - id: - $ref: ../../ID.yml + anyOf: + - $ref: ../extension/ContainerExtension.yml + - type: "null" service: anyOf: - $ref: ../ServiceContainerIdentifier.yml