diff options
author | Krzysztof Kuzmicki <krzysztof.kuzmicki@nokia.com> | 2021-03-24 23:44:17 +0100 |
---|---|---|
committer | Krzysztof Kuzmicki <krzysztof.kuzmicki@nokia.com> | 2021-04-07 07:04:39 +0000 |
commit | a19a5d2bfc58597b7b02bca70d4a42329cf93b6c (patch) | |
tree | f742baba2789784fe5028f718c52a8ba7f649a5d /robot/assets | |
parent | fbee3c47b31d0292ffeff03cca9fb30e6245bdd6 (diff) |
[ROBOT] Add new E2E test for 5G BulkPM usecase from HTTP server to ONAP gating
The goal is to add test suite for new E2E test for 5G BulkPM use case
using HTTPS server as an origin for PM files to be downloaded from.
Connection between DFC and HTTPS will be based on CMPv2 Certificate-based authentication
Issue-ID: INT-1815
Signed-off-by: Krzysztof Kuzmicki <krzysztof.kuzmicki@nokia.com>
Change-Id: Iebb71eb68538618cbc0c42444a039bd0f8effcf5
Diffstat (limited to 'robot/assets')
-rw-r--r-- | robot/assets/cmpv2/k8s-pnf-simulator.yaml | 10 | ||||
-rw-r--r-- | robot/assets/templates/dfc/consul.jinja | 31 | ||||
-rw-r--r-- | robot/assets/templates/dfc/notification.jinja | 34 | ||||
-rw-r--r-- | robot/assets/usecases/5gbulkpm/k8s-https.yaml | 78 |
4 files changed, 151 insertions, 2 deletions
diff --git a/robot/assets/cmpv2/k8s-pnf-simulator.yaml b/robot/assets/cmpv2/k8s-pnf-simulator.yaml index 1916ba95..89e838b9 100644 --- a/robot/assets/cmpv2/k8s-pnf-simulator.yaml +++ b/robot/assets/cmpv2/k8s-pnf-simulator.yaml @@ -33,6 +33,12 @@ inputs: type: boolean description: Flag to indicate external tls enable/disable. default: true + service_component_type: + type: string + default: "pnf-simulator" + service_component_name_override: + type: string + default: "pnf-simulator" node_templates: pnf-simulator: type: dcae.nodes.ContainerizedServiceComponent @@ -45,8 +51,8 @@ node_templates: ports: - '5000:0' properties: - service_component_type: pnf-simulator - service_component_name_override: pnf-simulator + service_component_type: { get_input: service_component_type } + service_component_name_override: { get_input: service_component_name_override } image: { get_input: tag_version } replicas: { get_input: replicas } always_pull_image: true diff --git a/robot/assets/templates/dfc/consul.jinja b/robot/assets/templates/dfc/consul.jinja new file mode 100644 index 00000000..f630f976 --- /dev/null +++ b/robot/assets/templates/dfc/consul.jinja @@ -0,0 +1,31 @@ +{ + "service_calls": [], + "streams_publishes": { + "PM_MEAS_FILES": { + "dmaap_info": "<<feed0>>", + "type": "data_router" + } + }, + "dmaap.certificateConfig.keyCert": "/opt/app/datafile/etc/cert/cert.p12", + "dmaap.certificateConfig.keyPasswordPath": "/opt/app/datafile/etc/cert/p12.pass", + "dmaap.certificateConfig.trustedCa": "/opt/app/datafile/etc/cert/trust.jks", + "dmaap.certificateConfig.trustedCaPasswordPath": "/opt/app/datafile/etc/cert/trust.pass", + "dmaap.security.enableDmaapCertAuth": true, + "dmaap.certificateConfig.httpsHostnameVerify": {{httpsHostnameVerify}}, + "dmaap.security.keyStorePasswordPath": "/opt/app/datafile/etc/cert/jks.pass", + "dmaap.security.keyStorePath": "/opt/app/datafile/etc/cert/cert.jks", + "dmaap.security.trustStorePasswordPath": "/opt/app/datafile/etc/cert/trust.pass", + "dmaap.security.trustStorePath": "/opt/app/datafile/etc/cert/trust.jks", + "dmaap.dmaapConsumerConfiguration.consumerGroup": "OpenDcae-c12", + "dmaap.dmaapConsumerConfiguration.consumerId": "C12", + "dmaap.dmaapConsumerConfiguration.timeoutMs": -1, + "sftp.security.strictHostKeyChecking": true, + "streams_subscribes": { + "dmaap_subscriber": { + "type": "message_router", + "dmaap_info": { + "topic_url": "https://message-router:3905/events/unauthenticated.VES_NOTIFICATION_OUTPUT" + } + } + } +}
\ No newline at end of file diff --git a/robot/assets/templates/dfc/notification.jinja b/robot/assets/templates/dfc/notification.jinja new file mode 100644 index 00000000..83396c29 --- /dev/null +++ b/robot/assets/templates/dfc/notification.jinja @@ -0,0 +1,34 @@ +{ + "event": { + "commonEventHeader": { + "version": "4.0.1", + "vesEventListenerVersion": "7.0.1", + "domain": "notification", + "eventName": "Noti_RnNode-Ericsson_FileReady", + "eventId": "FileReady_1797490e-10ae-4d48-9ea7-3d7d790b25e1", + "lastEpochMicrosec": 8745745764578, + "priority": "Normal", + "reportingEntityName": "NOK6061ZW3", + "sequence": 0, + "sourceName": "NOK6061ZW3", + "startEpochMicrosec": 8745745764578, + "timeZoneOffset": "UTC+05.30" + }, + "notificationFields": { + "changeIdentifier": "PM_MEAS_FILES", + "changeType": "FileReady", + "notificationFieldsVersion": "2.0", + "arrayOfNamedHashMap": [ + { + "name": "{{pm_file}}", + "hashMap": { + "location": "https://{{https_server_host}}:443/{{pm_file}}", + "compression": "gzip", + "fileFormatType": "{{fileFormatType}}", + "fileFormatVersion": "{{fileFormatVersion}}" + } + } + ] + } + } +}
\ No newline at end of file diff --git a/robot/assets/usecases/5gbulkpm/k8s-https.yaml b/robot/assets/usecases/5gbulkpm/k8s-https.yaml new file mode 100644 index 00000000..ac1d69a1 --- /dev/null +++ b/robot/assets/usecases/5gbulkpm/k8s-https.yaml @@ -0,0 +1,78 @@ +tosca_definitions_version: cloudify_dsl_1_3 +imports: + - 'http://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml' + - 'plugin:k8splugin?version=>=3.4.2,<4.0.0' +inputs: + tag_version: + type: string + description: Docker image to be used + default: 'nexus3.onap.org:10001/onap/org.onap.integration.nfsimulator.pmhttpsserver:latest' + replicas: + type: integer + description: Number of instances + default: 1 + external_cert_cert_type: + type: string + description: Output type + default: 'PEM' + external_cert_ca_name: + type: string + description: Name of Certificate Authority configured on CertService side. + default: 'RA' + external_cert_common_name: + type: string + description: Common name which should be present in certificate. + default: 'https-server' + external_cert_sans: + type: string + description: 'List of Subject Alternative Names (SANs) which should be present + in certificate. Delimiter - , Should contain common_name value and other FQDNs + under which given component is accessible.' + default: 'https-server' + external_cert_use_external_tls: + type: boolean + description: Flag to indicate external tls enable/disable. + default: true + service_component_type: + type: string + default: "https-server" + service_component_name_override: + type: string + default: "https-server" + enable_tls: + type: boolean + default: false +node_templates: + httpsserver: + type: dcae.nodes.ContainerizedServiceComponent + interfaces: + cloudify.interfaces.lifecycle: + start: + inputs: + ports: + - '80:0' + - '8080:0' + - '443:0' + properties: + service_component_type: { get_input: service_component_type } + service_component_name_override: { get_input: service_component_name_override } + image: { get_input: tag_version } + replicas: { get_input: replicas } + always_pull_image: true + tls_info: + cert_directory: '/etc/apache2/certs/' + use_tls: + get_input: enable_tls + external_cert: + external_cert_directory: '/etc/apache2/certs/' + use_external_tls: + get_input: external_cert_use_external_tls + cert_type: + get_input: external_cert_cert_type + ca_name: + get_input: external_cert_ca_name + external_certificate_parameters: + common_name: + get_input: external_cert_common_name + sans: + get_input: external_cert_sans |