X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=heat%2FvFW_CNF_CDS%2Ftemplates%2Fcba%2FDefinitions%2FvFW_CNF_CDS.json;h=c17caca281ea1df83cda12b07e708bb3fb0a6082;hb=06bf0ac45889ffe00fc6e27e68ffa15c2f519e6f;hp=914405b370a7e13663a3457c3f090ed79e1f2c44;hpb=89da408dd79bcc7cfb4d89033da435c974c13e70;p=demo.git diff --git a/heat/vFW_CNF_CDS/templates/cba/Definitions/vFW_CNF_CDS.json b/heat/vFW_CNF_CDS/templates/cba/Definitions/vFW_CNF_CDS.json index 914405b3..c17caca2 100644 --- a/heat/vFW_CNF_CDS/templates/cba/Definitions/vFW_CNF_CDS.json +++ b/heat/vFW_CNF_CDS/templates/cba/Definitions/vFW_CNF_CDS.json @@ -2,11 +2,11 @@ "tosca_definitions_version": "controller_blueprint_1_0_0", "metadata": { "template_author": "Samuli Silvius ", - "author-email": "abdelmuhaimen.seaudi@orange.com", + "author-email": "lukasz.rajewski@orange.com", "user-groups": "ADMIN, OPERATION", "template_name": "vFW_CNF_CDS", - "template_version": "1.0.44", - "template_tags": "Samuli Silvius, vFW_CNF_CDS", + "template_version": "8.0.0", + "template_tags": "Samuli Silvius, Lukasz Rajewski, vFW_CNF_CDS", "template_type": "DEFAULT" }, "imports": [ @@ -33,40 +33,24 @@ "username": "admin", "password": "admin" }, - "multicloud-k8s-api": { - "type": "basic-auth", - "username": "admin", - "password": "admin", - "url": "http://multicloud-k8s:9015" - }, - "profile-upload-properties": { - "assignment-params": { - "get_attribute": [ - "resource-assignment", - "assignment-params" - ] - }, - "profile-modification-decision-data": { - "get_input": "vpg-management-port" - }, - "profile-artifacts": { - "get_attribute": [ - "profile-modification", - "assignment-params" - ] - }, - "api-access": "*multicloud-k8s-api" - }, "config-deploy-properties": { "resolution-key": { "get_input": "resolution-key" } }, - "dynamic-db-source": { - "type": "maria-db", - "url": "jdbc:mysql://mariadb-galera:3306/sdnctl", - "username": "root", - "password": "secretpassword" + "simple-status-properties": { + "resolution-key": { + "get_input": "resolution-key" + }, + "config-deploy-setup": { + "get_attribute": [ + "config-setup-process", + "", + "assignment-map", + "config-deploy", + "config-deploy-setup" + ] + } } }, "topology_template": { @@ -81,25 +65,13 @@ "call_operation": "ResourceResolutionComponent.process" } ], - "on_success": [ - "profile-modification" - ] - }, - "profile-modification": { - "description": "Profile Modification Resources", - "target": "profile-modification", - "activities": [ - { - "call_operation": "ResourceResolutionComponent.process" - } - ], "on_success": [ "profile-upload" ] }, "profile-upload": { - "description": "Upload K8s Profile", - "target": "profile-upload", + "description": "Generate and upload K8s Profile", + "target": "k8s-profile-upload", "activities": [ { "call_operation": "ComponentScriptExecutor.process" @@ -140,30 +112,117 @@ } } }, + "config-assign": { + "steps": { + "config-setup": { + "description": "Gather necessary input for config template upload", + "target": "config-setup-process", + "activities": [ + { + "call_operation": "ResourceResolutionComponent.process" + } + ], + "on_success": [ + "config-template" + ] + }, + "config-template": { + "description": "Generate and upload K8s config template", + "target": "k8s-config-template", + "activities": [ + { + "call_operation": "K8sConfigTemplateComponent.process" + } + ] + } + }, + "inputs": { + "resolution-key": { + "required": true, + "type": "string" + }, + "store-result": { + "required": true, + "type": "boolean" + }, + "config-assign-properties": { + "description": "Dynamic PropertyDefinition for workflow(config-assign).", + "required": true, + "type": "dt-config-assign-properties" + } + } + }, "config-deploy": { "steps": { - "config-deploy": { - "description": "Config Deploy Workflow", - "target": "config-deploy-process" + "config-setup": { + "description": "Gather necessary input for config init and status verification", + "target": "config-setup-process", + "activities": [ + { + "call_operation": "ResourceResolutionComponent.process" + } + ], + "on_success": [ + "config-apply" + ], + "on_failure": [ + "handle_error" + ] + }, + "config-apply": { + "description": "Activate K8s config template", + "target": "k8s-config-apply", + "activities": [ + { + "call_operation": "K8sConfigTemplateComponent.process" + } + ], + "on_success": [ + "status-verification-script" + ] + }, + "status-verification-script": { + "description": "Simple status verification script", + "target": "simple-status-check", + "activities": [ + { + "call_operation": "ComponentScriptExecutor.process" + } + ], + "on_success": [ + "collect-results" + ], + "on_failure": [ + "handle_error" + ] + }, + "handle_error": { + "description": "Simple error verification script", + "target": "simple-error-check", + "activities": [ + { + "call_operation": "ComponentScriptExecutor.process" + } + ], + "on_success": [ + "collect-results" + ] + }, + "collect-results": { + "description": "Final collection of results", + "target": "collect-results" } }, "inputs": { + "resolution-key": { + "required": true, + "type": "string" + }, "config-deploy-properties": { "description": "Dynamic PropertyDefinition for workflow(config-deploy).", "required": true, "type": "dt-config-deploy-properties" } - }, - "outputs": { - "dry-run": { - "type": "json", - "value": { - "get_attribute": [ - "config-deploy-process", - "assignment-params" - ] - } - } } } }, @@ -184,27 +243,27 @@ } }, "artifacts": { - "base_template-template": { + "helm_base_template-template": { "type": "artifact-template-velocity", "file": "Templates/base_template-template.vtl" }, - "base_template-mapping": { + "helm_base_template-mapping": { "type": "artifact-mapping-resource", "file": "Templates/base_template-mapping.json" }, - "vpkg-template": { + "helm_vpkg-template": { "type": "artifact-template-velocity", "file": "Templates/vpkg-template.vtl" }, - "vpkg-mapping": { + "helm_vpkg-mapping": { "type": "artifact-mapping-resource", "file": "Templates/vpkg-mapping.json" }, - "vfw-template": { + "helm_vfw-template": { "type": "artifact-template-velocity", "file": "Templates/vfw-template.vtl" }, - "vfw-mapping": { + "helm_vfw-mapping": { "type": "artifact-mapping-resource", "file": "Templates/vfw-mapping.json" }, @@ -216,43 +275,132 @@ "type": "artifact-mapping-resource", "file": "Templates/vnf-mapping.json" }, - "vsn-template": { + "helm_vsn-template": { "type": "artifact-template-velocity", "file": "Templates/vsn-template.vtl" }, - "vsn-mapping": { + "helm_vsn-mapping": { "type": "artifact-mapping-resource", "file": "Templates/vsn-mapping.json" } } }, - "profile-modification": { - "type": "component-resource-resolution", + "k8s-profile-upload": { + "type": "component-k8s-profile-upload", "interfaces": { - "ResourceResolutionComponent": { + "K8sProfileUploadComponent": { + "operations": { + "process": { + "inputs": { + "artifact-prefix-names": { + "get_input": "template-prefix" + }, + "resource-assignment-map": { + "get_attribute": [ + "resource-assignment", + "assignment-map" + ] + } + } + } + } + } + }, + "artifacts": { + "vfw-cnf-cds-base-profile": { + "type": "artifact-k8sprofile-content", + "file": "Templates/k8s-profiles/vfw-cnf-cds-base-profile.tar.gz" + }, + "vfw-cnf-cds-vpkg-profile": { + "type": "artifact-k8sprofile-content", + "file": "Templates/k8s-profiles/vfw-cnf-cds-vpkg-profile" + }, + "vfw-cnf-cds-vpkg-profile-mapping": { + "type": "artifact-mapping-resource", + "file": "Templates/k8s-profiles/vfw-cnf-cds-vpkg-profile/ssh-service-mapping.json" + } + } + }, + "k8s-config-template": { + "type": "component-k8s-config-template", + "interfaces": { + "K8sConfigTemplateComponent": { "operations": { "process": { "inputs": { "artifact-prefix-names": [ - "ssh-service" - ] + "helm_vpkg" + ], + "resource-assignment-map": { + "get_attribute": [ + "config-setup-process", + "", + "assignment-map", + "config-deploy", + "config-deploy-setup" + ] + } } } } } }, "artifacts": { - "ssh-service-template": { - "type": "artifact-template-velocity", - "file": "Templates/k8s-profiles/ssh-service-template.vtl" + "ssh-service-config": { + "type": "artifact-k8sconfig-content", + "file": "Templates/k8s-configs/ssh-service.tar.gz" + }, + "ssh-service-config-customizable": { + "type": "artifact-k8sconfig-content", + "file": "Templates/k8s-configs/ssh-service-config" }, - "ssh-service-mapping": { + "ssh-service-config-customizable-mapping": { "type": "artifact-mapping-resource", - "file": "Templates/k8s-profiles/ssh-service-mapping.json" + "file": "Templates/k8s-configs/ssh-service-config/ssh-service-mapping.json" } } }, - "profile-upload": { + "k8s-config-apply": { + "type": "component-k8s-config-value", + "interfaces": { + "K8sConfigValueComponent": { + "operations": { + "process": { + "inputs": { + "artifact-prefix-names": [ + "helm_vpkg" + ], + "k8s-config-operation-type": "create", + "resource-assignment-map": { + "get_attribute": [ + "config-setup-process", + "", + "assignment-map", + "config-deploy", + "config-deploy-setup" + ] + } + } + } + } + } + }, + "artifacts": { + "ssh-service-default": { + "type": "artifact-k8sconfig-content", + "file": "Templates/k8s-configs/ssh-service-config/values.yaml" + }, + "ssh-service-config": { + "type": "artifact-k8sconfig-content", + "file": "Templates/k8s-configs/ssh-service-values/values.yaml.vtl" + }, + "ssh-service-config-mapping": { + "type": "artifact-mapping-resource", + "file": "Templates/k8s-configs/ssh-service-values/ssh-service-mapping.json" + } + } + }, + "simple-status-check": { "type": "component-script-executor", "interfaces": { "ComponentScriptExecutor": { @@ -260,37 +408,109 @@ "process": { "inputs": { "script-type": "kotlin", - "script-class-reference": "org.onap.ccsdk.cds.blueprintsprocessor.services.execution.scripts.K8sProfileUpload", - "dynamic-properties": "*profile-upload-properties" + "script-class-reference": "org.onap.ccsdk.cds.blueprintsprocessor.services.execution.scripts.SimpleStatusCheck", + "instance-dependencies": [ + "blueprintPropertiesService" + ], + "dynamic-properties": "*simple-status-properties" } } } } } }, - "config-deploy-process": { + "simple-error-check": { + "type": "component-script-executor", + "interfaces": { + "ComponentScriptExecutor": { + "operations": { + "process": { + "inputs": { + "script-type": "kotlin", + "script-class-reference": "org.onap.ccsdk.cds.blueprintsprocessor.services.execution.scripts.SimpleErrorCheck", + "instance-dependencies": [ + "blueprintPropertiesService" + ], + "dynamic-properties": "*simple-status-properties" + } + } + } + } + } + }, + "config-setup-process": { "type": "component-resource-resolution", "interfaces": { "ResourceResolutionComponent": { "operations": { "process": { "inputs": { + "resolution-key": { + "get_input": "resolution-key" + }, + "store-result": false, "artifact-prefix-names": [ - "nf-params" + "config-deploy" ] + }, + "outputs": { + "resource-assignment-params": { + "get_attribute": [ + "SELF", + "assignment-params" + ] + }, + "status": "success" } } } } }, "artifacts": { - "nf-params-template": { + "config-deploy-template": { "type": "artifact-template-velocity", - "file": "Templates/nf-params-template.vtl" + "file": "Templates/config-setup-template.vtl" }, - "nf-params-mapping": { + "config-deploy-mapping": { "type": "artifact-mapping-resource", - "file": "Templates/nf-params-mapping.json" + "file": "Templates/config-setup-mapping.json" + } + } + }, + "config-deploy-process": { + "type": "component-script-executor", + "interfaces": { + "ComponentScriptExecutor": { + "operations": { + "process": { + "inputs": { + "script-type": "kotlin", + "script-class-reference": "org.onap.ccsdk.cds.blueprintsprocessor.services.execution.scripts.ConfigDeploy", + "dynamic-properties": "*config-deploy-properties" + } + } + } + } + } + }, + "collect-results": { + "type": "component-script-executor", + "interfaces": { + "ComponentScriptExecutor": { + "operations": { + "process": { + "implementation": { + "primary": "component-script", + "timeout": 180, + "operation_host": "SELF" + }, + "inputs": { + "script-type": "kotlin", + "script-class-reference": "org.onap.ccsdk.cds.blueprintsprocessor.services.execution.scripts.CollectorScript" + }, + "outputs": {} + } + } } } }