-
Notifications
You must be signed in to change notification settings - Fork 677
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: add service deployment definition draft (#5)
* feat: add service deployment definition draft Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: adding the service deployment nutshell. More changes to be added Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: change schema directory and correct shared schemas Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: correct refs Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: correct typo Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: correct refs and convert to items lists Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: correct typos Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: correct interconnection object Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: correct anyOf items in schema Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: correct service definition schema Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: correct component schema Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: updated service deployment definition Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: correct endpoint schema Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: correct interconnections schema Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: update trustZones Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: correct typos Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: add internal connections schema Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> * fix: correct features under catalog Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com> --------- Signed-off-by: Alejandro Jose Leiva Palomo <alejandro.leiva.palomo@ibm.com>
- Loading branch information
Showing
40 changed files
with
2,243 additions
and
1,229 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
backend: | ||
types: | ||
default: | ||
metadata: | ||
location: metadata | ||
schema: | ||
location: schema | ||
additional: | ||
- metadata: | ||
location: ../shared/metadata | ||
relativePath: true | ||
schema: | ||
location: ../shared/schema | ||
relativePath: true | ||
data: | ||
location: ../shared/data | ||
relativePath: true | ||
readOnly: true | ||
data: | ||
location: data | ||
markdown: | ||
location: markdown |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,275 @@ | ||
{ | ||
"$id": "http://ibm.com/schemas/yaml-schema/components", | ||
"description": "Schema for gathering the properties of a component that the service is composed of.", | ||
"title": "Component", | ||
"type":"object", | ||
"properties": { | ||
"apiVersion": { | ||
"title": "Api Version", | ||
"description": "Equal to cloud.ibm.com/v1alpha1", | ||
"type": "string" | ||
}, | ||
"metadata": { "$ref": "#/$defs/Metadata" }, | ||
"kind": { | ||
"title": "Kind", | ||
"description": "Equal to ServiceDefinition", | ||
"type": "string" | ||
}, | ||
"spec": { | ||
"title": "Spec", | ||
"description": "This is the spec for the service component.", | ||
"type": "object", | ||
"properties": { | ||
"serviceDefinition": { | ||
"title": "Service Definition", | ||
"description": "The entity reference to the Service Definition of the services for which this entity described the deployment.", | ||
"type": "string" | ||
}, | ||
"types": { | ||
"title": "Types", | ||
"description": "The types of the component.", | ||
"type": "array", | ||
"items":{ | ||
"title": "Scope", | ||
"type": "string", | ||
"anyOf": [ | ||
{ | ||
"const": "support", | ||
"title": "Support" | ||
}, | ||
{ | ||
"const": "sub-service", | ||
"title": "Sub service" | ||
}, | ||
{ | ||
"const": "operations", | ||
"title": "Operations" | ||
} | ||
] | ||
}, | ||
"uniqueItems": true, | ||
"minItems": 1 | ||
}, | ||
"sdlcPhase": { "$ref": "#/$defs/SdlcPhase" }, | ||
"scope": { | ||
"title": "Scope", | ||
"description": "The list of service data, control, management, devops planes that this component belongs to.", | ||
"type": "string", | ||
"enum": [ "data-plane", "control-plane", "data-control-plane", "management-plane", "devops-plane"] | ||
}, | ||
"compliance": { | ||
"title": "Compliance", | ||
"description": "The information necessary to manage the compliance of the component.", | ||
"type": "object", | ||
"properties": { | ||
"label": { | ||
"title": "Label", | ||
"description": "Compliance service label.", | ||
"type": "string" | ||
}, | ||
"organization": { | ||
"title": "Organization", | ||
"description": "The organization that owns the service.", | ||
"type": "string" | ||
}, | ||
"group": { | ||
"title": "Group", | ||
"description": "The organization group of services that the service belongs to.", | ||
"type": "string" | ||
} | ||
}, | ||
"required": ["label", "organization"] | ||
}, | ||
"accounts": { | ||
"title": "Accounts", | ||
"description": "The list of IBM Cloud account in which are hosted inventory assets of the component.", | ||
"type": "array", | ||
"items": { | ||
"type": "object", | ||
"properties": { | ||
"id": { | ||
"title": "Id", | ||
"description": "The id of the IBM Cloud account.", | ||
"type": "string" | ||
}, | ||
"owner": { | ||
"title": "Owner", | ||
"description": "The W3id user id that owns the IBM Cloud account.", | ||
"type": "string" | ||
} | ||
}, | ||
"required": ["id", "owner"] | ||
} | ||
}, | ||
"inventory": { | ||
"title": "Inventory", | ||
"description": "The information necessary to identify the inventory items owned by the service", | ||
"type": "object", | ||
"properties": { | ||
"accounts": { | ||
"title": "Accounts", | ||
"description": "The list of IBM Cloud account in which are hosted inventory assets of the component.", | ||
"type": "array", | ||
"items": { | ||
"type": "object", | ||
"properties": { | ||
"id": { | ||
"title": "Id", | ||
"description": "The id of the IBM Cloud account.", | ||
"type": "string" | ||
}, | ||
"owner": { | ||
"title": "Owner", | ||
"description": "The W3id user id that owns the IBM Cloud account.", | ||
"type": "string" | ||
} | ||
}, | ||
"required": ["id", "owner"] | ||
} | ||
}, | ||
"sos": { | ||
"title": "SOS", | ||
"description": "The list of references to SOS inventory.", | ||
"type": "array", | ||
"items": { | ||
"type": "object", | ||
"properties": { | ||
"label": { | ||
"title": "Label", | ||
"description": "Compliance service label.", | ||
"type": "string" | ||
}, | ||
"cCode": { | ||
"title": "C-Code", | ||
"description": "The SOS inventory C-CODE.", | ||
"type": "string" | ||
}, | ||
"includes": { | ||
"title": "Includes", | ||
"description": "The list of filters on SOS inventory attribute values of inventory items to be considered included in the inventory", | ||
"type": "array", | ||
"items": { | ||
"type": "object", | ||
"properties": { | ||
"field": { | ||
"title": "Field", | ||
"description": "Field", | ||
"type": "string", | ||
"enum": [ "role", "application", "platform"] | ||
}, | ||
"value": { | ||
"title": "Value", | ||
"description": "Value", | ||
"type": "string" | ||
} | ||
} | ||
} | ||
}, | ||
"excludes": { | ||
"title": "Excludes", | ||
"description": "The list of filters on SOS inventory attribute values of inventory items to be considered excluded in the inventory", | ||
"type": "array", | ||
"items": { | ||
"type": "object", | ||
"properties": { | ||
"field": { | ||
"title": "Field", | ||
"description": "Field", | ||
"type": "string", | ||
"enum": [ "role", "application", "platform"] | ||
}, | ||
"value": { | ||
"title": "Value", | ||
"description": "Value", | ||
"type": "string" | ||
} | ||
} | ||
} | ||
}, | ||
"production" : { | ||
"title": "Production", | ||
"description": "Production", | ||
"type": "array", | ||
"items": { | ||
"type": "string" | ||
} | ||
} | ||
}, | ||
"required":["label", "cCode"] | ||
} | ||
} | ||
}, | ||
"required": ["sos"] | ||
}, | ||
"operations": { | ||
"title": "Operations", | ||
"description": "The information necessary to identify the operation processes for the components", | ||
"type": "object", | ||
"properties": { | ||
"operationWorkflow": { | ||
"title": "Operation Workflow", | ||
"description": "Operation Workflow", | ||
"type": "string", | ||
"enum": ["exception", "required"] | ||
}, | ||
"operationsManagers": { | ||
"title": "Operations Managers", | ||
"description": "Operations Managers list", | ||
"type": "array", | ||
"items": { | ||
"type": "string" | ||
} | ||
}, | ||
"tipStatus": { | ||
"title": "Tip Status", | ||
"description": "Tip Status", | ||
"type": "string", | ||
"enum": ["none", "onboarded"] | ||
}, | ||
"avm": { | ||
"title": "AVM", | ||
"description": "AVM", | ||
"type": "string", | ||
"enum": ["not-enabled", "enabled"] | ||
}, | ||
"avmRunbook": { | ||
"title": "AVM Runbook", | ||
"description": "AVM Runbook", | ||
"type": "string", | ||
"enum": ["not-enabled", "enabled"] | ||
} | ||
} | ||
}, | ||
"support": { | ||
"title": "Support", | ||
"description": "The information necessary to identify the support processes for the components.", | ||
"type": "object", | ||
"properties": { | ||
"supportWorkflow": { | ||
"title": "Support", | ||
"description": "", | ||
"type": "string", | ||
"enum": ["exception", "required"] | ||
}, | ||
"supportManagers": { | ||
"title": "Support Managers", | ||
"description": "Support Managers list", | ||
"type": "array", | ||
"items": { | ||
"type": "string" | ||
} | ||
}, | ||
"enablement": { | ||
"title": "Enablement", | ||
"description": "Enablement", | ||
"type": "string", | ||
"enum": ["exception", "completed"] | ||
} | ||
} | ||
} | ||
}, | ||
"required": ["serviceDefinition", "types", "scope" ] | ||
} | ||
}, | ||
"required": ["apiVersion", "kind", "description", "scope"] | ||
} |
12 changes: 12 additions & 0 deletions
12
repository/kinds/v1alpha1/schema/ComponentsList.schema.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
{ | ||
"$id": "http://ibm.com/schemas/yaml-schema/componentsList", | ||
"title": "Components", | ||
"description": "Schema for Components List. The list of the definition of the the different types of components that the service is composed of.", | ||
"type": "string", | ||
"oneOf": [ | ||
{ | ||
"const": "NONE", | ||
"title": "** Please define the components to populate list ***" | ||
} | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
{ | ||
"$id": "http://ibm.com/schemas/yaml-schema/datastore", | ||
"title": "Data store", | ||
"description": "Schema for Data Store. This covers also datastore internal to the service, e.g. DB deployed and managed by the service.", | ||
"type":"object", | ||
"properties": { | ||
"name": { | ||
"title": "Name", | ||
"description": "The unique name of the data store.", | ||
"type": "string" | ||
}, | ||
"type": { | ||
"title": "Type", | ||
"description": "Data store type.", | ||
"type": "string" | ||
}, | ||
"dataType": { | ||
"title": "Data Type", | ||
"description": "Data type for the data store.", | ||
"type": "string" | ||
}, | ||
"dataClassification": { | ||
"title": "Data classification", | ||
"description": "Data store data classification", | ||
"type": "string" | ||
}, | ||
"encryption": { | ||
"title": "Encryption", | ||
"description": "Data store encryption", | ||
"type": "string" | ||
}, | ||
"encryptionKeyStorage": { | ||
"title": "Encryption Key Storage", | ||
"description": "Data store encryption key storage", | ||
"type": "string" | ||
}, | ||
"encryptionKeyOwnership": { | ||
"title": "Encryption Key Ownership", | ||
"description": "Data store encryption key ownership", | ||
"type": "string" | ||
}, | ||
"encryptionCiphers": { | ||
"title": "Encryption Ciphers", | ||
"description": "Data store encryption ciphers", | ||
"type": "string" | ||
}, | ||
"authentication": { | ||
"title": "Authentication", | ||
"description": "Data store authentication", | ||
"type": "string" | ||
}, | ||
"authorization": { | ||
"title": "Authorization", | ||
"description": "Data store authorization", | ||
"type": "string" | ||
} | ||
}, | ||
"required":["name", "type", "dataType", "dataClassification", "encryption", | ||
"encryptionKeyStorage", "encryptionKeyOwnership", "encryptionCiphers", "authentication", "authorization" | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
{ | ||
"$id": "http://ibm.com/schemas/yaml-schema/datastores", | ||
"title": "Data stores List", | ||
"description": "Schema for Data Stores. This covers also datastore internal to the service, e.g. DB deployed and managed by the service.", | ||
"type": "array", | ||
"items": { | ||
"$ref": "#/$defs/Datastore" | ||
} | ||
} |
Oops, something went wrong.