From: Morgan Richomme Date: Mon, 23 Aug 2021 07:15:07 +0000 (+0000) Subject: Merge "csit set up not up issue fix" X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=98bc4b3fa14d1549817a1508978cb4d7bec362d3;hp=0c2e97e23e761121bab7bbfae64873a60da0d25d;p=integration%2Fcsit.git Merge "csit set up not up issue fix" --- diff --git a/plans/dcaegen2-services-pmsh/testsuite/assets/cbs_sim/cbs-initializer.json b/plans/dcaegen2-services-pmsh/testsuite/assets/cbs_sim/cbs-initializer.json index 68269622..194e556a 100644 --- a/plans/dcaegen2-services-pmsh/testsuite/assets/cbs_sim/cbs-initializer.json +++ b/plans/dcaegen2-services-pmsh/testsuite/assets/cbs_sim/cbs-initializer.json @@ -87,7 +87,7 @@ "dmaap_info": { "client_id": "1475976809466", "client_role": "org.onap.dcae.pmPublisher", - "topic_url": "http://dmaap:3904/events/unauthenticated.DCAE_CL_OUTPUT", + "topic_url": "http://dmaap-mr:3904/events/unauthenticated.DCAE_CL_OUTPUT", "location": "san-francisco" }, "type": "message_router" @@ -99,14 +99,14 @@ "dmaap_info": { "client_id": "1575976809466", "client_role": "org.onap.dcae.aaiSub", - "topic_url": "http://dmaap:3904/events/AAI_EVENT", + "topic_url": "http://dmaap-mr:3904/events/AAI_EVENT", "location": "san-francisco" } }, "policy_pm_subscriber": { "dmaap_info": { "location": "san-francisco", - "topic_url": "http://dmaap:3904/events/unauthenticated.PMSH_CL_INPUT", + "topic_url": "http://dmaap-mr:3904/events/unauthenticated.PMSH_CL_INPUT", "client_role": "org.onap.dcae.pmSubscriber", "client_id": "1575876809456" }, diff --git a/plans/dcaegen2-services-pmsh/testsuite/assets/kafka/zk_client_jaas.conf b/plans/dcaegen2-services-pmsh/testsuite/assets/kafka/zk_client_jaas.conf new file mode 100644 index 00000000..79a76017 --- /dev/null +++ b/plans/dcaegen2-services-pmsh/testsuite/assets/kafka/zk_client_jaas.conf @@ -0,0 +1,5 @@ +Client { + org.apache.zookeeper.server.auth.DigestLoginModule required + username="kafka" + password="kafka_secret"; + }; \ No newline at end of file diff --git a/plans/dcaegen2-services-pmsh/testsuite/assets/mr/MsgRtrApi.properties b/plans/dcaegen2-services-pmsh/testsuite/assets/mr/MsgRtrApi.properties new file mode 100644 index 00000000..47643216 --- /dev/null +++ b/plans/dcaegen2-services-pmsh/testsuite/assets/mr/MsgRtrApi.properties @@ -0,0 +1,166 @@ +# LICENSE_START======================================================= +# org.onap.dmaap +# ================================================================================ +# Copyright © 2017 AT&T Intellectual Property. All rights reserved. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END========================================================= +# +# ECOMP is a trademark and service mark of AT&T Intellectual Property. +# +############################################################################### +############################################################################### +## +## Cambria API Server config +## +## Default values are shown as commented settings. +## +############################################################################### +## +## HTTP service +## +## 3904 is standard as of 7/29/14. +# +## Zookeeper Connection +## +## Both Cambria and Kafka make use of Zookeeper. +## +config.zk.servers=zookeeper:2181 + +############################################################################### +## +## Kafka Connection +## +## Items below are passed through to Kafka's producer and consumer +## configurations (after removing "kafka.") +## if you want to change request.required.acks it can take this one value +#kafka.metadata.broker.list=localhost:9092,localhost:9093 +#kafka.metadata.broker.list={{.Values.kafka.name}}:{{.Values.kafka.port}} +kafka.metadata.broker.list=kafka:9092 +##kafka.request.required.acks=-1 +#kafka.client.zookeeper=${config.zk.servers} +consumer.timeout.ms=100 +zookeeper.connection.timeout.ms=6000 +zookeeper.session.timeout.ms=20000 +zookeeper.sync.time.ms=2000 +auto.commit.interval.ms=1000 +fetch.message.max.bytes =1000000 +auto.commit.enable=false + +#(backoff*retries > zksessiontimeout) +kafka.rebalance.backoff.ms=10000 +kafka.rebalance.max.retries=6 + + +############################################################################### +## +## Secured Config +## +## Some data stored in the config system is sensitive -- API keys and secrets, +## for example. to protect it, we use an encryption layer for this section +## of the config. +## +## The key is a base64 encode AES key. This must be created/configured for +## each installation. +#cambria.secureConfig.key= +## +## The initialization vector is a 16 byte value specific to the secured store. +## This must be created/configured for each installation. +#cambria.secureConfig.iv= + +## Southfield Sandbox +cambria.secureConfig.key=b/7ouTn9FfEw2PQwL0ov/Q== +cambria.secureConfig.iv=wR9xP5k5vbz/xD0LmtqQLw== +authentication.adminSecret=fe3cCompound + + +############################################################################### +## +## Consumer Caching +## +## Kafka expects live connections from the consumer to the broker, which +## obviously doesn't work over connectionless HTTP requests. The Cambria +## server proxies HTTP requests into Kafka consumer sessions that are kept +## around for later re-use. Not doing so is costly for setup per request, +## which would substantially impact a high volume consumer's performance. +## +## This complicates Cambria server failover, because we often need server +## A to close its connection before server B brings up the replacement. +## + +## The consumer cache is normally enabled. +#cambria.consumer.cache.enabled=true + +## Cached consumers are cleaned up after a period of disuse. The server inspects +## consumers every sweepFreqSeconds and will clean up any connections that are +## dormant for touchFreqMs. +#cambria.consumer.cache.sweepFreqSeconds=15 +cambria.consumer.cache.touchFreqMs=120000 +##stickforallconsumerrequests=false +## The cache is managed through ZK. The default value for the ZK connection +## string is the same as config.zk.servers. +#cambria.consumer.cache.zkConnect=${config.zk.servers} + +## +## Shared cache information is associated with this node's name. The default +## name is the hostname plus the HTTP service port this host runs on. (The +## hostname is determined via InetAddress.getLocalHost ().getCanonicalHostName(), +## which is not always adequate.) You can set this value explicitly here. +## +#cambria.api.node.identifier= + +#cambria.rateLimit.maxEmptyPollsPerMinute=30 +#cambria.rateLimitActual.delay.ms=10 + +############################################################################### +## +## Metrics Reporting +## +## This server can report its metrics periodically on a topic. +## +#metrics.send.cambria.enabled=true +#metrics.send.cambria.topic=cambria.apinode.metrics +#msgrtr.apinode.metrics.dmaap +#metrics.send.cambria.sendEverySeconds=60 + +cambria.consumer.cache.zkBasePath=/fe3c/cambria/consumerCache +consumer.timeout=17 +default.partitions=3 +default.replicas=3 +############################################################################## +#100mb +maxcontentlength=10000 + + +############################################################################## +#AAF Properties +msgRtr.namespace.aaf=org.onap.dmaap.mr.topic +msgRtr.topicfactory.aaf=org.onap.dmaap.mr.topicFactory|:org.onap.dmaap.mr.topic: +enforced.topic.name.AAF=org.onap.dmaap.mr +forceAAF=false +transidUEBtopicreqd=false +defaultNSforUEB=org.onap.dmaap.mr +############################################################################## +#Mirror Maker Agent + +msgRtr.mirrormakeradmin.aaf=org.onap.dmaap.mr.mirrormaker|*|admin +msgRtr.mirrormakeruser.aaf=org.onap.dmaap.mr.mirrormaker|*|user +msgRtr.mirrormakeruser.aaf.create=org.onap.dmaap.mr.topicFactory|:org.onap.dmaap.mr.topic: +msgRtr.mirrormaker.timeout=15000 +msgRtr.mirrormaker.topic=org.onap.dmaap.mr.mirrormakeragent +msgRtr.mirrormaker.consumergroup=mmagentserver +msgRtr.mirrormaker.consumerid=1 + +kafka.max.poll.interval.ms=300000 +kafka.heartbeat.interval.ms=60000 +kafka.session.timeout.ms=240000 +kafka.max.poll.records=1000 \ No newline at end of file diff --git a/plans/dcaegen2-services-pmsh/testsuite/assets/zk/zk_server_jaas.conf b/plans/dcaegen2-services-pmsh/testsuite/assets/zk/zk_server_jaas.conf new file mode 100644 index 00000000..3d2767fa --- /dev/null +++ b/plans/dcaegen2-services-pmsh/testsuite/assets/zk/zk_server_jaas.conf @@ -0,0 +1,4 @@ +Server { + org.apache.zookeeper.server.auth.DigestLoginModule required + user_kafka="kafka_secret"; +}; \ No newline at end of file diff --git a/plans/dcaegen2-services-pmsh/testsuite/docker-compose.yml b/plans/dcaegen2-services-pmsh/testsuite/docker-compose.yml index 6541ddbf..8f51dfdc 100644 --- a/plans/dcaegen2-services-pmsh/testsuite/docker-compose.yml +++ b/plans/dcaegen2-services-pmsh/testsuite/docker-compose.yml @@ -1,6 +1,76 @@ version: '3.3' services: + zookeeper: + image: nexus3.onap.org:10001/onap/dmaap/zookeeper:6.1.0 + container_name: dmaap-zookeeper + ports: + - "2181:2181" + environment: + ZOOKEEPER_REPLICAS: 1 + ZOOKEEPER_TICK_TIME: 2000 + ZOOKEEPER_SYNC_LIMIT: 5 + ZOOKEEPER_INIT_LIMIT: 10 + ZOOKEEPER_MAX_CLIENT_CNXNS: 200 + ZOOKEEPER_AUTOPURGE_SNAP_RETAIN_COUNT: 3 + ZOOKEEPER_AUTOPURGE_PURGE_INTERVAL: 24 + ZOOKEEPER_CLIENT_PORT: 2181 + KAFKA_OPTS: -Djava.security.auth.login.config=/etc/zookeeper/secrets/jaas/zk_server_jaas.conf -Dzookeeper.kerberos.removeHostFromPrincipal=true -Dzookeeper.kerberos.removeRealmFromPrincipal=true -Dzookeeper.authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider -Dzookeeper.requireClientAuthScheme=sasl -Dzookeeper.4lw.commands.whitelist=* + ZOOKEEPER_SERVER_ID: 1 + volumes: + - ./assets/zk/zk_server_jaas.conf:/etc/zookeeper/secrets/jaas/zk_server_jaas.conf + networks: + net: + aliases: + - zookeeper + + kafka: + image: nexus3.onap.org:10001/onap/dmaap/kafka111:1.1.0 + container_name: dmaap-kafka + ports: + - "9092:9092" + environment: + enableCadi: 'false' + KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 + KAFKA_ZOOKEEPER_CONNECTION_TIMEOUT_MS: 40000 + KAFKA_ZOOKEEPER_SESSION_TIMEOUT_MS: 40000 + KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INTERNAL_PLAINTEXT:PLAINTEXT,EXTERNAL_PLAINTEXT:PLAINTEXT + KAFKA_ADVERTISED_LISTENERS: INTERNAL_PLAINTEXT://kafka:9092 + KAFKA_LISTENERS: INTERNAL_PLAINTEXT://0.0.0.0:9092 + KAFKA_INTER_BROKER_LISTENER_NAME: INTERNAL_PLAINTEXT + KAFKA_CONFLUENT_SUPPORT_METRICS_ENABLE: 'false' + KAFKA_OPTS: -Djava.security.auth.login.config=/etc/kafka/secrets/jaas/zk_client_jaas.conf + KAFKA_ZOOKEEPER_SET_ACL: 'true' + KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1 + # Reduced the number of partitions only to avoid the timeout error for the first subscribe call in slow environment + KAFKA_OFFSETS_TOPIC_NUM_PARTITIONS: 1 + volumes: + - ./assets/kafka/zk_client_jaas.conf:/etc/kafka/secrets/jaas/zk_client_jaas.conf + networks: + net: + aliases: + - kafka + depends_on: + - zookeeper + + dmaap-mr: + image: nexus3.onap.org:10001/onap/dmaap/dmaap-mr:1.3.0 + container_name: dmaap-mr + ports: + - "3904:3904" + - "3905:3905" + environment: + enableCadi: 'false' + volumes: + - ./assets/mr/MsgRtrApi.properties:/appl/dmaapMR1/bundleconfig/etc/appprops/MsgRtrApi.properties + networks: + net: + aliases: + - dmaap-mr + depends_on: + - zookeeper + - kafka + db: container_name: db image: postgres @@ -9,7 +79,7 @@ services: POSTGRES_PASSWORD: $DB_PASSWORD POSTGRES_USER: $DB_USER networks: - dockercompose_net: + net: aliases: - db @@ -26,7 +96,7 @@ services: - ./assets/ssl_certs/mock_server_cacert.pem:/var/tmp/mock_server_cacert.pem - ./assets/ssl_certs/mock_server_key.pem:/var/tmp/mock_server_key.pem networks: - dockercompose_net: + net: aliases: - aai-sim @@ -44,7 +114,7 @@ services: - ./assets/ssl_certs/mock_server_cacert.pem:/var/tmp/mock_server_cacert.pem - ./assets/ssl_certs/mock_server_key.pem:/var/tmp/mock_server_key.pem networks: - dockercompose_net: + net: aliases: - cbs-sim @@ -66,11 +136,11 @@ services: AAI_SERVICE_PORT: 1080 DCAE_CA_CERTPATH: '/opt/app/pmsh/etc/certs/cacert.pem' networks: - dockercompose_net: + net: aliases: - pmsh networks: - dockercompose_net: - external: true + net: + driver: bridge diff --git a/plans/dcaegen2-services-pmsh/testsuite/setup.sh b/plans/dcaegen2-services-pmsh/testsuite/setup.sh index d7b988e4..73a219f7 100644 --- a/plans/dcaegen2-services-pmsh/testsuite/setup.sh +++ b/plans/dcaegen2-services-pmsh/testsuite/setup.sh @@ -1,16 +1,11 @@ #!/bin/bash -# Place the scripts in run order: - -source ${WORKSPACE}/scripts/dmaap-message-router/dmaap-mr-launch.sh -dmaap_mr_launch -DMAAP_MR_IP=${IP} export DB_USER=pmsh export DB_PASSWORD=pmsh TEST_PLANS_DIR=$WORKSPACE/plans/dcaegen2-services-pmsh/testsuite -docker-compose -f ${TEST_PLANS_DIR}/docker-compose.yml up -d db aai cbs-sim +docker-compose -f ${TEST_PLANS_DIR}/docker-compose.yml up -d zookeeper kafka dmaap-mr db aai cbs-sim # Slow machine running CSITs can affect db coming up in time for PMSH echo "Waiting for postgres db to come up..." @@ -26,6 +21,20 @@ for i in {1..30}; do done [[ "$db_response" != "0" ]] && echo "Error: postgres db not accessible" && exit 1 +DMAAP_MR_IP=$(docker inspect -f "{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}" dmaap-mr) + +echo "Waiting for dmaap-message-router to come up ..." +for i in {1..20}; do + dmaap_state=$(curl --write-out '%{http_code}' --silent --output /dev/null $DMAAP_MR_IP:3904/topics) + if [[ ${dmaap_state} == "200" ]] + then + break + else + sleep 5 + fi +done +[[ "$dmaap_state" != "200" ]] && echo "Error: DMaaP MR container state not healthy" && exit 1 + docker-compose -f ${TEST_PLANS_DIR}/docker-compose.yml up -d pmsh PMSH_IP=$(docker inspect -f "{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}" pmsh) diff --git a/plans/dcaegen2-services-pmsh/testsuite/teardown.sh b/plans/dcaegen2-services-pmsh/testsuite/teardown.sh index 75e624e5..a01dfda0 100644 --- a/plans/dcaegen2-services-pmsh/testsuite/teardown.sh +++ b/plans/dcaegen2-services-pmsh/testsuite/teardown.sh @@ -1,7 +1,5 @@ #!/bin/bash echo "Starting teardown script" -source ${WORKSPACE}/scripts/dmaap-message-router/dmaap-mr-teardown.sh -dmaap_mr_teardown TEST_PLANS_DIR=$WORKSPACE/plans/dcaegen2-services-pmsh/testsuite mkdir -p $WORKSPACE/archives docker exec pmsh /bin/sh -c "cat /var/log/ONAP/dcaegen2/services/pmsh/*" diff --git a/plans/dmaap-buscontroller/with_dr/setup.sh b/plans/dmaap-buscontroller/with_dr/setup.sh deleted file mode 100755 index 822f6a7e..00000000 --- a/plans/dmaap-buscontroller/with_dr/setup.sh +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/bash -# -# ============LICENSE_START======================================================= -# org.onap.dmaap -# ================================================================================ -# Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. -# ================================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============LICENSE_END========================================================= -# -# -source ${SCRIPTS}/common_functions.sh - -COMPOSE_PREFIX=${COMPOSE_PROJECT_NAME:-dockercompose} -export COMPOSE_PROJECT_NAME=$COMPOSE_PREFIX -echo "COMPOSE_PROJECT_NAME=$COMPOSE_PROJECT_NAME" -echo "COMPOSE_PREFIX=$COMPOSE_PREFIX" - -source ${WORKSPACE}/scripts/dmaap-datarouter/datarouter-launch.sh -# Launch DR. If true is passed, 2 subscriber containers are also deployed, else false. -dmaap_dr_launch false -DRPS_IP=${DR_PROV_IP} - -source ${WORKSPACE}/scripts/dmaap-buscontroller/dmaapbc-launch.sh -dmaapbc_launch ${DRPS_IP} -DMAAPBC_IP=${DMAAP_BC_IP} - -echo "DRPS_IP=$DRPS_IP DMAAPBC_IP=$DMAAPBC_IP" - -# Pass any variables required by Robot test suites in ROBOT_VARIABLES -ROBOT_VARIABLES="-v DRPS_IP:${DRPS_IP} -v DMAAPBC_IP:${DMAAPBC_IP}" -set -x -${WORKSPACE}/scripts/dmaap-buscontroller/dmaapbc-init.sh ${DMAAPBC_IP} -set +x - diff --git a/plans/dmaap-buscontroller/with_dr/teardown.sh b/plans/dmaap-buscontroller/with_dr/teardown.sh deleted file mode 100755 index 5e801423..00000000 --- a/plans/dmaap-buscontroller/with_dr/teardown.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/bash -# -# ============LICENSE_START======================================================= -# org.onap.dmaap -# ================================================================================ -# Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. -# ================================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============LICENSE_END========================================================= - -#kill-instance.sh dmaapbc -cd ${WORKSPACE}/archives/dmaap/dr -rm -rf last_run_logs/* -docker cp datarouter-prov:/opt/app/datartr/logs last_run_logs/prov_logs -docker cp datarouter-node:/opt/app/datartr/logs last_run_logs/node_event_logs -docker cp datarouter-node:/var/log/onap/datarouter last_run_logs/node_server_logs -docker cp subscriber-node:/var/log/onap/datarouter last_run_logs/sub1_logs -docker cp subscriber-node2:/var/log/onap/datarouter last_run_logs/sub2_logs -docker cp dmaap-bc:/opt/app/dmaapbc/logs/ONAP last_run_logs/bc_logs - -sudo sed -i".bak" '/dmaap-dr-prov/d' /etc/hosts -sudo sed -i".bak" '/dmaap-dr-node/d' /etc/hosts -docker-compose -f ${WORKSPACE}/scripts/dmaap-datarouter/docker-compose/docker-compose.yml rm -sf -docker-compose -f ${WORKSPACE}/scripts/dmaap-buscontroller/docker-compose/docker-compose-bc.yml rm -sf diff --git a/plans/dmaap-buscontroller/with_dr/testplan.txt b/plans/dmaap-buscontroller/with_dr/testplan.txt deleted file mode 100755 index 04c6838d..00000000 --- a/plans/dmaap-buscontroller/with_dr/testplan.txt +++ /dev/null @@ -1,2 +0,0 @@ -# Place the suites in run order. -dmaap-buscontroller/with_dr diff --git a/plans/dmaap-buscontroller/with_mr/setup.sh b/plans/dmaap-buscontroller/with_mr/setup.sh deleted file mode 100755 index 74bfb0c5..00000000 --- a/plans/dmaap-buscontroller/with_mr/setup.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/bash -# -# ============LICENSE_START======================================================= -# org.onap.dmaap -# ================================================================================ -# Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. -# ================================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============LICENSE_END========================================================= -# -# -# Place the scripts in run order: -source ${WORKSPACE}/scripts/dmaap-message-router/dmaap-mr-launch.sh -dmaap_mr_launch -MRC_IP=${IP} - -mkdir -p ${WORKSPACE}/archives/dmaapmr/last_run_logs - -source ${WORKSPACE}/scripts/dmaap-buscontroller/dmaapbc-launch.sh -dmaapbc_launch $MRC_IP -DMAAP_BC_IP=${DMAAP_BC_IP} - -echo "DMAAP_BC_IP=$DMAAP_BC_IP" - -# Pass any variables required by Robot test suites in ROBOT_VARIABLES -ROBOT_VARIABLES=" -v DMAAP_BC_IP:${DMAAP_BC_IP}" -set -x -${WORKSPACE}/scripts/dmaap-buscontroller/dmaapbc-init.sh ${DMAAP_BC_IP} -set +x diff --git a/plans/dmaap-buscontroller/with_mr/teardown.sh b/plans/dmaap-buscontroller/with_mr/teardown.sh deleted file mode 100644 index 5149743a..00000000 --- a/plans/dmaap-buscontroller/with_mr/teardown.sh +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/bash -# -# ============LICENSE_START======================================================= -# org.onap.dmaap -# ================================================================================ -# Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. -# ================================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============LICENSE_END========================================================= -# -# -cd ${WORKSPACE}/archives/dmaapmr -source ${WORKSPACE}/scripts/dmaap-message-router/dmaap-mr-teardown.sh -dmaap_mr_teardown -rm -rf last_run_logs/* -docker cp dmaap-bc:/opt/app/dmaapbc/logs/ONAP last_run_logs/bc_logs -docker-compose -f ${WORKSPACE}/scripts/dmaap-buscontroller/docker-compose/docker-compose-bc.yml rm -sf - - - diff --git a/plans/dmaap-buscontroller/with_mr/testplan.txt b/plans/dmaap-buscontroller/with_mr/testplan.txt deleted file mode 100644 index a8fe876a..00000000 --- a/plans/dmaap-buscontroller/with_mr/testplan.txt +++ /dev/null @@ -1,3 +0,0 @@ -# Test suites are relative paths under [integration/csit.git]/tests/. -# Place the suites in run order. -dmaap-buscontroller/with_mr diff --git a/plans/dmaap-datarouter/ssl-dr-suite/setup.sh b/plans/dmaap-datarouter/ssl-dr-suite/setup.sh deleted file mode 100755 index 53b4387c..00000000 --- a/plans/dmaap-datarouter/ssl-dr-suite/setup.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# ============LICENSE_START=================================================== -# Copyright (C) 2019-2021 Nordix Foundation. -# ============================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# SPDX-License-Identifier: Apache-2.0 -# ============LICENSE_END===================================================== - -source ${WORKSPACE}/scripts/dmaap-datarouter/datarouter-launch.sh -# Launch DR. If true is passed, 2 subscriber containers are also deployed, else false. -dmaap_dr_launch true -cd ${WORKSPACE}/scripts/dmaap-datarouter/robot_ssl -# Add the root CA to robot framework. This is then removed on teardown. -python -c 'import update_ca; update_ca.add_onap_ca_cert()' \ No newline at end of file diff --git a/plans/dmaap-datarouter/ssl-dr-suite/teardown.sh b/plans/dmaap-datarouter/ssl-dr-suite/teardown.sh deleted file mode 100755 index 536863bc..00000000 --- a/plans/dmaap-datarouter/ssl-dr-suite/teardown.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash -# ============LICENSE_START=================================================== -# Copyright (C) 2019-2021 Nordix Foundation. -# ============================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# SPDX-License-Identifier: Apache-2.0 -# ============LICENSE_END===================================================== - -source ${WORKSPACE}/scripts/dmaap-datarouter/datarouter-teardown.sh -teardown_dmaap_dr \ No newline at end of file diff --git a/plans/dmaap-datarouter/ssl-dr-suite/testplan.txt b/plans/dmaap-datarouter/ssl-dr-suite/testplan.txt deleted file mode 100755 index 5d32c668..00000000 --- a/plans/dmaap-datarouter/ssl-dr-suite/testplan.txt +++ /dev/null @@ -1,2 +0,0 @@ -# Place the suites in run order. -dmaap-datarouter/ssl-dr-suite diff --git a/plans/oom-platform-cert-service/certservice/cmpServers.json b/plans/oom-platform-cert-service/certservice/cmpServers.json index 72564949..0d883eae 100644 --- a/plans/oom-platform-cert-service/certservice/cmpServers.json +++ b/plans/oom-platform-cert-service/certservice/cmpServers.json @@ -3,8 +3,7 @@ { "caName": "Client", "url": "http://oomcert-ejbca:8080/ejbca/publicweb/cmp/cmp", - "issuerDN": "CN=ManagementCA", - "caMode": "CLIENT", + "issuerDN": "O=EJBCA Container Quickstart,CN=ManagementCA,UID=12345", "authentication": { "iak": "mypassword", "rv": "mypassword" @@ -13,8 +12,7 @@ { "caName": "RA", "url": "http://oomcert-ejbca:8080/ejbca/publicweb/cmp/cmpRA", - "issuerDN": "CN=ManagementCA", - "caMode": "RA", + "issuerDN": "O=EJBCA Container Quickstart,CN=ManagementCA,UID=12345", "authentication": { "iak": "mypassword", "rv": "mypassword" diff --git a/plans/oom-platform-cert-service/certservice/docker-compose.yml b/plans/oom-platform-cert-service/certservice/docker-compose.yml index 734ea131..dff46881 100644 --- a/plans/oom-platform-cert-service/certservice/docker-compose.yml +++ b/plans/oom-platform-cert-service/certservice/docker-compose.yml @@ -8,6 +8,8 @@ services: ports: - "80:8080" - "443:8443" + environment: + - NO_CREATE_CA=true volumes: - $RESOURCES_PATH/ejbca-configuration.sh:/opt/primekey/scripts/ejbca-configuration.sh - $RESOURCES_PATH/certprofile_CUSTOM_ENDUSER-1834889499.xml:/opt/primekey/custom_profiles/certprofile_CUSTOM_ENDUSER-1834889499.xml diff --git a/plans/oom-platform-cert-service/certservice/resources/ejbca-configuration.sh b/plans/oom-platform-cert-service/certservice/resources/ejbca-configuration.sh index 3eb146db..3094b7f7 100755 --- a/plans/oom-platform-cert-service/certservice/resources/ejbca-configuration.sh +++ b/plans/oom-platform-cert-service/certservice/resources/ejbca-configuration.sh @@ -1,15 +1,30 @@ #!/bin/bash configureEjbca() { + ejbca.sh ca init \ + --caname ManagementCA \ + --dn "O=EJBCA Container Quickstart,CN=ManagementCA,UID=12345" \ + --tokenType soft \ + --keyspec 3072 \ + --keytype RSA \ + -v 3652 \ + --policy null \ + -s SHA256WithRSA \ + -type "x509" ejbca.sh config cmp addalias --alias cmpRA ejbca.sh config cmp updatealias --alias cmpRA --key operationmode --value ra ejbca.sh ca editca --caname ManagementCA --field cmpRaAuthSecret --value mypassword - ejbca.sh config cmp updatealias --alias cmpRA --key responseprotection --value pbe + ejbca.sh config cmp updatealias --alias cmpRA --key responseprotection --value signature + ejbca.sh config cmp updatealias --alias cmpRA --key authenticationmodule --value 'HMAC;EndEntityCertificate' + ejbca.sh config cmp updatealias --alias cmpRA --key authenticationparameters --value '-;ManagementCA' + ejbca.sh config cmp updatealias --alias cmpRA --key allowautomatickeyupdate --value true ejbca.sh ca importprofiles -d /opt/primekey/custom_profiles #Profile name taken from certprofile filename (certprofile_-.xml) ejbca.sh config cmp updatealias --alias cmpRA --key ra.certificateprofile --value CUSTOM_ENDUSER #ID taken from entityprofile filename (entityprofile_-.xml) ejbca.sh config cmp updatealias --alias cmpRA --key ra.endentityprofileid --value 1356531849 + caSubject=$(ejbca.sh ca getcacert --caname ManagementCA -f /dev/stdout | grep 'Subject' | sed -e "s/^Subject: //" | sed -n '1p') + ejbca.sh config cmp updatealias --alias cmpRA --key defaultca --value "$caSubject" ejbca.sh config cmp dumpalias --alias cmpRA ejbca.sh config cmp addalias --alias cmp ejbca.sh config cmp updatealias --alias cmp --key allowautomatickeyupdate --value true @@ -19,6 +34,13 @@ configureEjbca() { ejbca.sh config cmp updatealias --alias cmp --key extractusernamecomponent --value CN ejbca.sh config cmp dumpalias --alias cmp ejbca.sh ca getcacert --caname ManagementCA -f /dev/stdout > cacert.pem + #Add "Certificate Update Admin" role to allow performing KUR/CR for certs within specific organization (e.g. Linux-Foundation) + ejbca.sh roles addrole "Certificate Update Admin" + ejbca.sh roles changerule "Certificate Update Admin" /ca/ManagementCA/ ACCEPT + ejbca.sh roles changerule "Certificate Update Admin" /ca_functionality/create_certificate/ ACCEPT + ejbca.sh roles changerule "Certificate Update Admin" /endentityprofilesrules/Custom_EndEntity/ ACCEPT + ejbca.sh roles changerule "Certificate Update Admin" /ra_functionality/edit_end_entity/ ACCEPT + ejbca.sh roles addrolemember "Certificate Update Admin" ManagementCA WITH_ORGANIZATION --value "Linux-Foundation" } configureEjbca diff --git a/scripts/dmaap-buscontroller/dmaapbc-init.sh b/scripts/dmaap-buscontroller/dmaapbc-init.sh deleted file mode 100755 index 5e9cbb1e..00000000 --- a/scripts/dmaap-buscontroller/dmaapbc-init.sh +++ /dev/null @@ -1,58 +0,0 @@ -#!/bin/bash - -# $1 is the IP address of the buscontroller - -# INITIALIZE: dmaap object -JSON=/tmp/$$.dmaap -cat << EOF > $JSON -{ - "version": "1", - "topicNsRoot": "org.onap.dmaap", - "drProvUrl": "https://dmaap-dr-prov:8443", - "dmaapName": "onapCSIT", - "bridgeAdminTopic": "MM_AGENT_PROV" - -} -EOF - -echo "Initializing /dmaap endpoint" -curl -v -k -X POST -d @${JSON} -H "Content-Type: application/json" https://$1:8443/webapi/dmaap - - -# INITIALIZE: dcaeLocation object -JSON=/tmp/$$.loc -cat << EOF > $JSON -{ - "dcaeLocationName": "csit-sanfrancisco", - "dcaeLayer": "central-cloud", - "clli": "CSIT12345", - "zone": "zoneA" - -} -EOF - -echo "Initializing /dcaeLocations endpoint" -curl -v -k -X POST -d @${JSON} -H "Content-Type: application/json" https://$1:8443/webapi/dcaeLocations - - -# INITIALIZE: MR object in 1 site -# since MR is currently deployed via docker-compose, its IP doesn't seem -# to be routable from DBCL. Fortunately, the MR port is mapped from the docker bridge IP address. -# Found this article for how to deterine the docker bridge IP so using it as a workaround. -# https://stackoverflow.com/questions/22944631/how-to-get-the-ip-address-of-the-docker-host-from-inside-a-docker-container -# Used the following snippet found buried in a comment to an answer and then modified for only 1 value. -DOCKER_HOST=$(ip -4 addr show docker0 | grep -Po 'inet \K[\d.]+' | head -1 ) -# Perhaps there is a better way... -JSON=/tmp/$$.mrc -cat << EOF > $JSON -{ - "dcaeLocationName": "csit-sanfrancisco", - "fqdn": "message-router", - "topicProtocol" : "http", - "topicPort": "3904" - -} -EOF - -echo "Initializing /mr_clusters endpoint" -curl -v -k -X POST -d @${JSON} -H "Content-Type: application/json" https://$1:8443/webapi/mr_clusters diff --git a/scripts/dmaap-buscontroller/dmaapbc-launch.sh b/scripts/dmaap-buscontroller/dmaapbc-launch.sh deleted file mode 100755 index 3e446d89..00000000 --- a/scripts/dmaap-buscontroller/dmaapbc-launch.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash - -# script to launch DMaaP buscontroller docker container -# sets global var IP with assigned IP address - -function dmaapbc_launch() { - export dmaap_prov_ip=$1 - export dmaap_mr_ip=$1 - cd ${WORKSPACE}/scripts/dmaap-buscontroller/docker-compose - docker-compose -f docker-compose-bc.yml up -d - - sleep 10 - - DMAAP_BC_IP=`get-instance-ip.sh dmaap-bc` - - source ${SCRIPTS}/common_functions.sh - bypass_ip_adress ${DMAAP_BC_IP} - - # Wait for initialization - for i in 1 2 3 4 5 6 7 8 9 10; do - curl -sS ${DMAAP_BC_IP}:8080 && break - echo sleep ${i} - sleep ${i} - done - -} diff --git a/scripts/dmaap-buscontroller/docker-compose/buscontroller.env b/scripts/dmaap-buscontroller/docker-compose/buscontroller.env deleted file mode 100644 index cc3a3c7d..00000000 --- a/scripts/dmaap-buscontroller/docker-compose/buscontroller.env +++ /dev/null @@ -1,4 +0,0 @@ -DMAAPBC_WAIT_TO_EXIT=Y -DMAAPBC_PG_ENABLED=false -DMAAPBC_CSIT=Yes -DMAAPBC_KSTOREFILE=/opt/app/osaaf/local/org.onap.dmaap-bc.jks \ No newline at end of file diff --git a/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/org.onap.dmaap-bc.cred.props b/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/org.onap.dmaap-bc.cred.props deleted file mode 100644 index 52536a14..00000000 --- a/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/org.onap.dmaap-bc.cred.props +++ /dev/null @@ -1,17 +0,0 @@ -############################################################ -# Properties Generated by AT&T Certificate Manager -# by root -# on 2021-03-12T11:38:49.244+0000 -# @copyright 2019, AT&T -############################################################ -Challenge=secret -cadi_alias=dmaap-bc@dmaap-bc.onap.org -cadi_key_password=secret -#cadi_keyfile=/opt/app/osaaf/local/org.onap.dmaap-dr.keyfile -cadi_keystore=/opt/app/osaaf/local/org.onap.dmaap-bc.jks -cadi_keystore_password=secret -cadi_keystore_password_jks=secret -cadi_keystore_password_p12=secret -cadi_truststore=/opt/app/osaaf/local/truststore.jks -cadi_truststore_password=secret -cadi_x509_issuers=CN=intermediateCA_1, OU=OSAAF, O=ONAP, C=US:CN=intermediateCA_7, OU=OSAAF, O=ONAP, C=US:CN=intermediateCA_9, OU=OSAAF, O=ONAP, C=US diff --git a/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/org.onap.dmaap-bc.jks b/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/org.onap.dmaap-bc.jks deleted file mode 100644 index ca8301ca..00000000 Binary files a/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/org.onap.dmaap-bc.jks and /dev/null differ diff --git a/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/org.onap.dmaap-bc.location.props b/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/org.onap.dmaap-bc.location.props deleted file mode 100644 index a8374dc7..00000000 --- a/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/org.onap.dmaap-bc.location.props +++ /dev/null @@ -1,8 +0,0 @@ -############################################################ -# Properties Generated by AT&T Certificate Manager -# by root -# on 2021-03-12T11:25:54.608+0000 -# @copyright 2019, AT&T -############################################################ -cadi_latitude=38.0 -cadi_longitude=-72.0 diff --git a/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/org.onap.dmaap-bc.props b/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/org.onap.dmaap-bc.props deleted file mode 100644 index f3747fad..00000000 --- a/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/org.onap.dmaap-bc.props +++ /dev/null @@ -1,24 +0,0 @@ -############################################################ -# Properties Generated by AT&T Certificate Manager -# by root -# on 2021-03-12T11:25:54.617+0000 -# @copyright 2019, AT&T -############################################################ -aaf_env=DEV -aaf_id=dmaap-bc@dmaap-bc.onap.org -aaf_locate_url=https://aaf-locate.onap:8095 -aaf_locator_app_ns=org.osaaf.aaf -aaf_locator_container=oom -aaf_locator_container_ns=onap -aaf_locator_fqdn=dmaap-bc -aaf_locator_public_fqdn=aaf.osaaf.org -aaf_oauth2_introspect_url=https://AAF_LOCATE_URL/%CNS.%AAF_NS.introspect:2.1/introspect -aaf_oauth2_token_url=https://AAF_LOCATE_URL/%CNS.%AAF_NS.token:2.1/token -aaf_url=https://AAF_LOCATE_URL/%CNS.%AAF_NS.service:2.1 -aaf_url_cm=https://AAF_LOCATE_URL/%CNS.%AAF_NS.cm:2.1 -aaf_url_fs=https://AAF_LOCATE_URL/%CNS.%AAF_NS.fs:2.1 -aaf_url_gui=https://AAF_LOCATE_URL/%CNS.%AAF_NS.gui:2.1 -aaf_url_hello=https://aaf-locate.onap:8095/locate/onap.org.osaaf.aaf.hello:2.1 -aaf_url_oauth=https://AAF_LOCATE_URL/%CNS.%AAF_NS.oauth:2.1 -cadi_prop_files=/opt/app/osaaf/local/org.onap.dmaap-bc.location.props:/opt/app/osaaf/local/org.onap.dmaap-bc.cred.props -cadi_protocols=TLSv1.1,TLSv1.2 diff --git a/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/truststore.jks b/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/truststore.jks deleted file mode 100644 index 91547c60..00000000 Binary files a/scripts/dmaap-buscontroller/docker-compose/cadi_aaf/truststore.jks and /dev/null differ diff --git a/scripts/dmaap-buscontroller/docker-compose/dmaapbc.properties b/scripts/dmaap-buscontroller/docker-compose/dmaapbc.properties deleted file mode 100644 index 611a172f..00000000 --- a/scripts/dmaap-buscontroller/docker-compose/dmaapbc.properties +++ /dev/null @@ -1,168 +0,0 @@ - -##################################################### -# -# Hooks for specific environment configurations -# -##################################################### -# Indicator for whether to use AAF for authentication -UseAAF: false - -# Stub out southbound calls for Unit Test cases to run. e.g. not timeout -# Comment out in other environments to get default (No) -#UnitTest: Yes - - -##################################################### -# -# Settings for Southbound API: Datarouter -# -##################################################### - -# URI to retrieve dynamic DR configuration -ProvisioningURI: /internal/prov - -# indicator for handling feed delete: -# DeleteOnDR - means use the DR API to DELETE a feed. (default for backwards compatibility) -# SimulateDelete - means preserve the feed on DR (after cleaning it up), and mark as DELETED in DBCL. Better for cloudify environments. -Feed.deleteHandling: SimulateDelete - -########################################################### -# The following properties default to match ONAP DR instance. -# However, there are some non-ONAP DR instances that require other values. -# Sets the X-DR-ON-BEHALF-OF HTTP Header value -#DR.onBehalfHeader: -# Value for the Content-Type Header in DR Feed API -#DR.feedContentType: -# Value for the Content-Type Header in DR Subscription API -#DR.subContentType: -# -# END OF properties helpful for non-ONAP DR instance. -############################################################ - -##################################################### -# -# Settings for Soutbound API: Postgresql -# -##################################################### -# flag indicates if we are using postgresql -UsePGSQL: false - - -##################################################### -# -# Settings for Soutbound API: Message Router -# -##################################################### -# indicator for multi-site (locations) deployment. Give clue to buscontroller whether -# there is a need for message replication between edge and central. -# ONAP Casablanca is a single site deployment -MR.multisite: false - -# FQDN of primary message router. -# In ONAP Casablanca, there is only 1 message router service, so use that. -# In a multi-site, MR cluster deployment, use the CNAME DNS entry which resolves to the primary central MR -MR.CentralCname: message-router - -# Indicator for whether we want hostname verification on SSL connection to MR -MR.hostnameVerify: false - - -# MR Client Delete Level thoroughness: -# 0 = don't delete -# 1 = delete from persistent store -# 2 = delete from persistent store (DB) and authorization store (AAF) -MR.ClientDeleteLevel: 1 - -# namespace of MR Topic Factory -MR.TopicFactoryNS: org.onap.dmaap.mr.topicFactory - -# AAF Role assigned to Topic Manager Identity -MR.TopicMgrRole: org.onap.dmaap-bc-topic-mgr.client - -# MR topic ProjectID (used in certain topic name generation formats) -MR.projectID: mr - -# Use Basic Authentication when provisioning topics -MR.authentication: basicAuth - -# MR topic name style (default is FQTN_LEGACY_FORMAT) -#MR.topicStyle: FQTN_LEGACY_FORMAT -# -# end of MR Related Properties -################################################################################ - - -##################################################### -# -# Settings for Southbound API: AAF proxy -# -##################################################### -# URL of the AAF server -aaf.URL: {{ .Values.aafURL }} - -# TopicMgr Identity -aaf.TopicMgrUser: {{ .Values.topicMgrUser }} - -# Password for TopicMgr identity -aaf.TopicMgrPassword: {{ .Values.topicMgrPwd }} - -# Buscontroller Admin Identity -aaf.AdminUser: {{ .Values.adminUser }} - -# Admin Password -aaf.AdminPassword: {{ .Values.adminPwd }} - -# Identity that is owner of any created namespaces for topics -aaf.NsOwnerIdentity: {{ .Values.adminUser }} - - -# -# endof AAF Properties -#################################################### - - -##################################################### -# -# Settings for authorization of DBCAPI -# -##################################################### -# Namespace for URI values for the API used to create AAF permissions -# e.g. if ApiNamespace is X.Y.dmaapbc.api then for URI /mr_clients we create AAF perm X.Y.dmaapbc.api.mr_clients -ApiNamespace: org.onap.dmaap-bc.api - -# If API authorization is required, then implement a class to enforce it. -# This overrides the Class used for API permission check. -ApiPermission.Class: org.onap.dmaap.dbcapi.authentication.AllowAll - - -##################################################### -# -# Certificate Management -# -##################################################### - -# Indicates how we are expecting certificates to be provided: -# cadi - a set of artifacts will be downloaded from AAF at deployment time, and details will be in a cadi properties file -# legacy (default) - artifacts will be installed manually or some other way and details will be in this file -CertificateManagement: cadi - -# When CertificateManagement is cadi, then this is where all the cadi properties will be. -# Note that the cadi properties include where the cert is, and the encrypted passwords to read. -cadi.properties: /opt/app/osaaf/local/org.onap.dmaap-bc.props - - -##################################################### -# -# HTTP Server Configuration -# -##################################################### - -# Allow http access to dbcapi -HttpAllowed: true - -# listen to http port within this container (server) -IntHttpPort: 8080 - -# listen to https port within this container (server) -# set to 0 if no certificates are available. -IntHttpsPort: 8443 diff --git a/scripts/dmaap-buscontroller/docker-compose/docker-compose-bc.yml b/scripts/dmaap-buscontroller/docker-compose/docker-compose-bc.yml deleted file mode 100644 index 7357f900..00000000 --- a/scripts/dmaap-buscontroller/docker-compose/docker-compose-bc.yml +++ /dev/null @@ -1,25 +0,0 @@ -version: '2.1' -services: - dmaap-bc: - container_name: dmaap-bc - hostname: dmaap-bc - image: nexus3.onap.org:10001/onap/dmaap/dmaap-bc - ports: - - "30241:8080" - - "30242:8443" - volumes: - - ./buscontroller.env:/opt/app/config/conf/buscontroller.env - - ./dmaapbc.properties:/opt/app/config/conf/dmaapbc.properties - - ./cadi_aaf:/opt/app/osaaf/local - - ./logback.xml:/opt/app/dmaapbc/etc/logback.xml - networks: - dockercompose_net: - aliases: - - dmaap-bc - extra_hosts: - - dmaap-dr-prov:$dmaap_prov_ip - - message-router:$dmaap_prov_ip - -networks: - dockercompose_net: - external: true diff --git a/scripts/dmaap-buscontroller/docker-compose/logback.xml b/scripts/dmaap-buscontroller/docker-compose/logback.xml deleted file mode 100644 index 9e8492b1..00000000 --- a/scripts/dmaap-buscontroller/docker-compose/logback.xml +++ /dev/null @@ -1,356 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ${defaultPattern} - - - - - - - - - - - - ${logDirectory}/${generalLogName}.log - - ${logDirectory}/${generalLogName}.%i.log.zip - - 1 - 9 - - - 5MB - - - ${defaultPattern} - - - - - 256 - - - - - - ${logDirectory}/${securityLogName}.log - - ${logDirectory}/${securityLogName}.%i.log.zip - - 1 - 9 - - - 5MB - - - ${defaultPattern} - - - - - 256 - 0 - - - - - - ${logDirectory}/${performanceLogName}.log - - ${logDirectory}/${performanceLogName}.%i.log.zip - - 1 - 9 - - - 5MB - - - ${defaultPattern} - - - - 256 - - - - - - ${logDirectory}/${serverLogName}.log - - ${logDirectory}/${serverLogName}.%i.log.zip - - 1 - 9 - - - 5MB - - - ${defaultPattern} - - - - 256 - - - - - - - ${logDirectory}/${policyLogName}.log - - ${logDirectory}/${policyLogName}.%i.log.zip - - 1 - 9 - - - 5MB - - - ${defaultPattern} - - - - 256 - - - - - - - - ${logDirectory}/${auditLogName}.log - - ${logDirectory}/${auditLogName}.%i.log.zip - - 1 - 9 - - - 5MB - - - ${auditLoggerPattern} - - - - 256 - - - - - ${logDirectory}/${metricsLogName}.log - - ${logDirectory}/${metricsLogName}.%i.log.zip - - 1 - 9 - - - 5MB - - - ${metricsLoggerPattern} - - - - - - 256 - - - - - ${logDirectory}/${errorLogName}.log - - ${logDirectory}/${errorLogName}.%i.log.zip - - 1 - 9 - - - 5MB - - - ${errorLoggerPattern} - - - - - 256 - - - - - ${debugLogDirectory}/${debugLogName}.log - - ${debugLogDirectory}/${debugLogName}.%i.log.zip - - 1 - 9 - - - 5MB - - - ${debugLoggerPattern} - - - - - 256 - - true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/scripts/dmaap-datarouter/datarouter-launch.sh b/scripts/dmaap-datarouter/datarouter-launch.sh deleted file mode 100644 index 6d38913d..00000000 --- a/scripts/dmaap-datarouter/datarouter-launch.sh +++ /dev/null @@ -1,92 +0,0 @@ -#!/bin/bash -# -# ============LICENSE_START======================================================= -# Copyright (C) 2021 Nordix Foundation. -# ================================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# SPDX-License-Identifier: Apache-2.0 -# ============LICENSE_END========================================================= -# - -function dmaap_dr_launch() { - - subscribers_required=$1 - mkdir -p ${WORKSPACE}/archives/dmaap/dr/last_run_logs - - # start DMaaP DR containers with docker compose and configuration from docker-compose.yml - docker login -u docker -p docker nexus3.onap.org:10001 - if [[ ${subscribers_required} == true ]]; then - docker-compose -f ${WORKSPACE}/scripts/dmaap-datarouter/docker-compose/docker-compose.yml up -d - else - docker-compose -f ${WORKSPACE}/scripts/dmaap-datarouter/docker-compose/docker-compose.yml up -d datarouter-prov datarouter-node mariadb - fi - - # Wait for initialization of Docker container for datarouter-node, datarouter-prov and mariadb - for i in 1 2 3 4 5 6 7 8 9 10; do - if [[ $(docker inspect --format '{{ .State.Running }}' datarouter-node) ]] && \ - [[ $(docker inspect --format '{{ .State.Running }}' datarouter-prov) ]] && \ - [[ $(docker inspect --format '{{ .State.Running }}' mariadb) ]] - then - echo "DR Service Running" - break - else - echo sleep ${i} - sleep ${i} - fi - done - - # Wait for healthy container datarouter-prov - for i in 1 2 3 4 5 6 7 8 9 10; do - if [[ "$(docker inspect --format '{{ .State.Health.Status }}' datarouter-prov)" = 'healthy' ]] - then - echo datarouter-prov.State.Health.Status is $(docker inspect --format '{{ .State.Health.Status }}' datarouter-prov) - echo "DR Service Running, datarouter-prov container is healthy" - break - else - echo datarouter-prov.State.Health.Status is $(docker inspect --format '{{ .State.Health.Status }}' datarouter-prov) - echo sleep ${i} - sleep ${i} - if [[ ${i} = 10 ]] - then - echo datarouter-prov container is not in healthy state - the test is not made, teardown... - docker-compose rm -sf - exit 1 - fi - fi - done - - DR_PROV_IP=`get-instance-ip.sh datarouter-prov` - DR_NODE_IP=`get-instance-ip.sh datarouter-node` - DR_GATEWAY_IP=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.Gateway}}{{end}}' datarouter-prov) - echo DR_PROV_IP=${DR_PROV_IP} - echo DR_NODE_IP=${DR_NODE_IP} - echo DR_GATEWAY_IP=${DR_GATEWAY_IP} - if [[ ${subscribers_required} == true ]] - then - DR_SUB_IP=`get-instance-ip.sh subscriber-node` - DR_SUB2_IP=`get-instance-ip.sh subscriber-node2` - echo DR_SUB_IP=${DR_SUB_IP} - echo DR_SUB2_IP=${DR_SUB2_IP} - fi - - - sudo sed -i "$ a $DR_PROV_IP dmaap-dr-prov" /etc/hosts - sudo sed -i "$ a $DR_NODE_IP dmaap-dr-node" /etc/hosts - - docker exec -i datarouter-prov sh -c "curl -k -X PUT https://$DR_PROV_IP:8443/internal/api/NODES?val=dmaap-dr-node\|$DR_GATEWAY_IP" - docker exec -i datarouter-prov sh -c "curl -k -X PUT https://$DR_PROV_IP:8443/internal/api/PROV_AUTH_ADDRESSES?val=dmaap-dr-prov\|$DR_GATEWAY_IP" - - #Pass any variables required by Robot test suites in ROBOT_VARIABLES - ROBOT_VARIABLES="-v DR_PROV_IP:${DR_PROV_IP} -v DR_NODE_IP:${DR_NODE_IP} -v DR_SUB_IP:${DR_SUB_IP} -v DR_SUB2_IP:${DR_SUB2_IP}" -} \ No newline at end of file diff --git a/scripts/dmaap-datarouter/datarouter-teardown.sh b/scripts/dmaap-datarouter/datarouter-teardown.sh deleted file mode 100755 index 8958f28c..00000000 --- a/scripts/dmaap-datarouter/datarouter-teardown.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -# ============LICENSE_START=================================================== -# Copyright (C) 2019-2021 Nordix Foundation. -# ============================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# SPDX-License-Identifier: Apache-2.0 -# ============LICENSE_END===================================================== - -function teardown_dmaap_dr (){ - cd ${WORKSPACE}/archives/dmaap/dr - rm -rf last_run_logs/* - docker cp datarouter-prov:/opt/app/datartr/logs last_run_logs/prov_logs - docker cp datarouter-node:/opt/app/datartr/logs last_run_logs/node_event_logs - docker cp datarouter-node:/var/log/onap/datarouter last_run_logs/node_server_logs - docker cp subscriber-node:/var/log/onap/datarouter last_run_logs/sub1_logs - docker cp subscriber-node2:/var/log/onap/datarouter last_run_logs/sub2_logs - sudo sed -i".bak" '/dmaap-dr-prov/d' /etc/hosts - sudo sed -i".bak" '/dmaap-dr-node/d' /etc/hosts - docker-compose -f ${WORKSPACE}/scripts/dmaap-datarouter/docker-compose/docker-compose.yml rm -sf - cd ${WORKSPACE}/scripts/dmaap-datarouter/robot_ssl - python -c 'import update_ca; update_ca.remove_onap_ca_cert()' -} \ No newline at end of file diff --git a/scripts/dmaap-datarouter/docker-compose/docker-compose.yml b/scripts/dmaap-datarouter/docker-compose/docker-compose.yml deleted file mode 100644 index 2a0b4190..00000000 --- a/scripts/dmaap-datarouter/docker-compose/docker-compose.yml +++ /dev/null @@ -1,118 +0,0 @@ -# -# ============LICENSE_START======================================================= -# Copyright (C) 2019-21 Nordix Foundation. -# ================================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# SPDX-License-Identifier: Apache-2.0 -# ============LICENSE_END========================================================= -# -# -version: '2.1' -services: - datarouter-prov: - image: nexus3.onap.org:10001/onap/dmaap/datarouter-prov - container_name: datarouter-prov - hostname: dmaap-dr-prov - ports: - - "443:8443" - - "8443:8443" - - "8080:8080" - volumes: - - ./provserver.properties:/opt/app/datartr/etc/provserver.properties - - ../dr_certs/dr_prov/truststore.jks:/opt/app/osaaf/local/truststore.jks - - ../dr_certs/dr_prov/org.onap.dmaap-dr-prov.p12:/opt/app/osaaf/local/org.onap.dmaap-dr-prov.p12 - - ../dr_certs/dr_prov/org.onap.dmaap-dr.cred.props:/opt/app/osaaf/local/org.onap.dmaap-dr.cred.props - depends_on: - mariadb: - condition: service_healthy - healthcheck: - test: ["CMD", "curl", "-f", "http://dmaap-dr-prov:8080/internal/prov"] - interval: 10s - timeout: 30s - retries: 5 - networks: - net: - aliases: - - dmaap-dr-prov - - datarouter-node: - image: nexus3.onap.org:10001/onap/dmaap/datarouter-node - container_name: datarouter-node - hostname: dmaap-dr-node - ports: - - "9443:8443" - - "9090:8080" - volumes: - - ./node.properties:/opt/app/datartr/etc/node.properties - - ../dr_certs/dr_node/truststore.jks:/opt/app/osaaf/local/truststore.jks - - ../dr_certs/dr_node/org.onap.dmaap-dr-node.p12:/opt/app/osaaf/local/org.onap.dmaap-dr-node.p12 - - ../dr_certs/dr_node/org.onap.dmaap-dr.cred.props:/opt/app/osaaf/local/org.onap.dmaap-dr.cred.props - depends_on: - datarouter-prov: - condition: service_healthy - networks: - net: - aliases: - - dmaap-dr-node - - datarouter-subscriber: - image: nexus3.onap.org:10001/onap/dmaap/datarouter-subscriber - container_name: subscriber-node - hostname: subscriber.com - ports: - - "7070:7070" - volumes: - - ./subscriber.properties:/opt/app/subscriber/etc/subscriber.properties - networks: - net: - aliases: - - subscriber.com - - datarouter-subscriber2: - image: nexus3.onap.org:10001/onap/dmaap/datarouter-subscriber - container_name: subscriber-node2 - hostname: subscriber2.com - ports: - - "7071:7070" - volumes: - - ./subscriber.properties:/opt/app/subscriber/etc/subscriber.properties - networks: - net: - aliases: - - subscriber2.com - - mariadb: - image: mariadb:10.2.14 - container_name: mariadb - hostname: datarouter-mariadb - ports: - - "3306:3306" - environment: - MYSQL_ROOT_PASSWORD: datarouter - MYSQL_DATABASE: datarouter - MYSQL_USER: datarouter - MYSQL_PASSWORD: datarouter - healthcheck: - test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost", "-u", "datarouter", "-pdatarouter", "--silent"] - interval: 10s - timeout: 30s - retries: 5 - networks: - net: - aliases: - - datarouter-mariadb - -networks: - net: - driver: bridge diff --git a/scripts/dmaap-datarouter/docker-compose/node.properties b/scripts/dmaap-datarouter/docker-compose/node.properties deleted file mode 100644 index 58639cfd..00000000 --- a/scripts/dmaap-datarouter/docker-compose/node.properties +++ /dev/null @@ -1,82 +0,0 @@ -# ============LICENSE_START=================================================== -# Copyright (C) 2019-2021 Nordix Foundation. -# ============================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# SPDX-License-Identifier: Apache-2.0 -# ============LICENSE_END===================================================== -# -# Configuration parameters set at startup for the DataRouter node -# -# URL to retrieve dynamic configuration -ProvisioningURL = https://dmaap-dr-prov:8443/internal/prov -# -# URL to upload PUB/DEL/EXP logs -LogUploadURL = https://dmaap-dr-prov:8443/internal/logs -# -# The port number for http as seen within the server -IntHttpPort = 8080 -# -# The port number for https as seen within the server -IntHttpsPort = 8443 -# -# The external port number for https taking port mapping into account -ExtHttpsPort = 443 -# -# The minimum interval between fetches of the dynamic configuration from the provisioning server -MinProvFetchInterval = 10000 -# -# The minimum interval between saves of the redirection data file -MinRedirSaveInterval = 10000 -# -# The path to the directory where log files are stored -LogDir = /opt/app/datartr/logs -# -# The retention interval (in days) for log files -LogRetention = 30 -# -# The path to the directories where data and meta data files are stored -SpoolDir = /opt/app/datartr/spool -# -# The path to the redirection data file -RedirectionFile = etc/redirections.dat -# -# The type of keystore for https -KeyStoreType = PKCS12 -# -# The type of truststore for https -TrustStoreType = jks -# -# The path to the file used to trigger an orderly shutdown -QuiesceFile = etc/SHUTDOWN -# -# The key used to generate passwords for node to node transfers -NodeAuthKey = Node123! -# -# DR_NODE DEFAULT ENABLED TLS PROTOCOLS -NodeHttpsProtocols = TLSv1.1|TLSv1.2 -# -# AAF type to generate permission string -AAFType = org.onap.dmaap-dr.feed -# -# AAF default instance to generate permission string - default should be legacy -AAFInstance = legacy -# -# AAF action to generate permission string - default should be publish -AAFAction = publish -# -# AAF CADI enabled flag -CadiEnabled = false -# -# AAF Props file path -AAFPropsFilePath = /opt/app/osaaf/local/org.onap.dmaap-dr.props diff --git a/scripts/dmaap-datarouter/docker-compose/provserver.properties b/scripts/dmaap-datarouter/docker-compose/provserver.properties deleted file mode 100755 index b54868e2..00000000 --- a/scripts/dmaap-datarouter/docker-compose/provserver.properties +++ /dev/null @@ -1,55 +0,0 @@ -# ============LICENSE_START=================================================== -# Copyright (C) 2019-2021 Nordix Foundation. -# ============================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# SPDX-License-Identifier: Apache-2.0 -# ============LICENSE_END===================================================== - -#Jetty Server properties -org.onap.dmaap.datarouter.provserver.http.port = 8080 -org.onap.dmaap.datarouter.provserver.https.port = 8443 -org.onap.dmaap.datarouter.provserver.https.relaxation = true - -org.onap.dmaap.datarouter.provserver.aafprops.path = /opt/app/osaaf/local/org.onap.dmaap-dr.props - -org.onap.dmaap.datarouter.provserver.accesslog.dir = /opt/app/datartr/logs -org.onap.dmaap.datarouter.provserver.spooldir = /opt/app/datartr/spool -org.onap.dmaap.datarouter.provserver.dbscripts = /opt/app/datartr/etc/misc -org.onap.dmaap.datarouter.provserver.logretention = 30 - -#DMAAP-597 (Tech Dept) REST request source IP auth -# relaxation to accommodate OOM kubernetes deploy -org.onap.dmaap.datarouter.provserver.isaddressauthenabled = false - -#Localhost address config -org.onap.dmaap.datarouter.provserver.localhost = 127.0.0.1 - -# Database access -org.onap.dmaap.datarouter.db.driver = org.mariadb.jdbc.Driver -org.onap.dmaap.datarouter.db.url = jdbc:mariadb://datarouter-mariadb:3306/datarouter -org.onap.dmaap.datarouter.db.login = datarouter -org.onap.dmaap.datarouter.db.password = datarouter - -# PROV - DEFAULT ENABLED TLS PROTOCOLS -org.onap.dmaap.datarouter.provserver.https.include.protocols = TLSv1.1|TLSv1.2 - -# AAF config -org.onap.dmaap.datarouter.provserver.cadi.enabled = false - -org.onap.dmaap.datarouter.provserver.passwordencryption = PasswordEncryptionKey#@$%^&1234# -org.onap.dmaap.datarouter.provserver.aaf.feed.type = org.onap.dmaap-dr.feed -org.onap.dmaap.datarouter.provserver.aaf.sub.type = org.onap.dmaap-dr.sub -org.onap.dmaap.datarouter.provserver.aaf.instance = legacy -org.onap.dmaap.datarouter.provserver.aaf.action.publish = publish -org.onap.dmaap.datarouter.provserver.aaf.action.subscribe = subscribe \ No newline at end of file diff --git a/scripts/dmaap-datarouter/docker-compose/subscriber.properties b/scripts/dmaap-datarouter/docker-compose/subscriber.properties deleted file mode 100644 index 311bbe56..00000000 --- a/scripts/dmaap-datarouter/docker-compose/subscriber.properties +++ /dev/null @@ -1,35 +0,0 @@ -# ============LICENSE_START=================================================== -# Copyright (C) 2019-2021 Nordix Foundation. -# ============================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# SPDX-License-Identifier: Apache-2.0 -# ============LICENSE_END===================================================== - -#Subscriber properties -org.onap.dmaap.datarouter.subscriber.http.port = 7070 -org.onap.dmaap.datarouter.subscriber.https.port = 7443 -org.onap.dmaap.datarouter.subscriber.auth.user = LOGIN -org.onap.dmaap.datarouter.subscriber.auth.password = PASSWORD -org.onap.dmaap.datarouter.subscriber.delivery.dir = /opt/app/subscriber/delivery - -org.onap.dmaap.datarouter.subscriber.https.relaxation = true -org.onap.dmaap.datarouter.subscriber.keystore.type = jks -org.onap.dmaap.datarouter.subscriber.keymanager.password = changeit -org.onap.dmaap.datarouter.subscriber.keystore.path = /opt/app/datartr/self_signed/keystore.jks -org.onap.dmaap.datarouter.subscriber.keystore.password = changeit -org.onap.dmaap.datarouter.subscriber.truststore.path = /opt/app/datartr/self_signed/cacerts.jks -org.onap.dmaap.datarouter.subscriber.truststore.password = changeit - - - diff --git a/scripts/dmaap-datarouter/dr_certs/dr_node/org.onap.dmaap-dr-node.p12 b/scripts/dmaap-datarouter/dr_certs/dr_node/org.onap.dmaap-dr-node.p12 deleted file mode 100644 index 3793a9d4..00000000 Binary files a/scripts/dmaap-datarouter/dr_certs/dr_node/org.onap.dmaap-dr-node.p12 and /dev/null differ diff --git a/scripts/dmaap-datarouter/dr_certs/dr_node/org.onap.dmaap-dr.cred.props b/scripts/dmaap-datarouter/dr_certs/dr_node/org.onap.dmaap-dr.cred.props deleted file mode 100644 index e32e7282..00000000 --- a/scripts/dmaap-datarouter/dr_certs/dr_node/org.onap.dmaap-dr.cred.props +++ /dev/null @@ -1,17 +0,0 @@ -############################################################ -# Properties Generated by AT&T Certificate Manager -# by root -# on 2021-03-12T11:38:49.244+0000 -# @copyright 2019, AT&T -############################################################ -Challenge=secret -cadi_alias=dmaap-dr-node@dmaap-dr.onap.org -cadi_key_password=secret -#cadi_keyfile=/opt/app/osaaf/local/org.onap.dmaap-dr.keyfile -cadi_keystore=/opt/app/osaaf/local/org.onap.dmaap-dr-node.p12 -cadi_keystore_password=secret -cadi_keystore_password_jks=secret -cadi_keystore_password_p12=secret -cadi_truststore=/opt/app/osaaf/local/truststore.jks -cadi_truststore_password=secret -cadi_x509_issuers=CN=intermediateCA_1, OU=OSAAF, O=ONAP, C=US:CN=intermediateCA_7, OU=OSAAF, O=ONAP, C=US:CN=intermediateCA_9, OU=OSAAF, O=ONAP, C=US diff --git a/scripts/dmaap-datarouter/dr_certs/dr_node/truststore.jks b/scripts/dmaap-datarouter/dr_certs/dr_node/truststore.jks deleted file mode 100644 index 91547c60..00000000 Binary files a/scripts/dmaap-datarouter/dr_certs/dr_node/truststore.jks and /dev/null differ diff --git a/scripts/dmaap-datarouter/dr_certs/dr_prov/org.onap.dmaap-dr-prov.p12 b/scripts/dmaap-datarouter/dr_certs/dr_prov/org.onap.dmaap-dr-prov.p12 deleted file mode 100755 index 1393fb05..00000000 Binary files a/scripts/dmaap-datarouter/dr_certs/dr_prov/org.onap.dmaap-dr-prov.p12 and /dev/null differ diff --git a/scripts/dmaap-datarouter/dr_certs/dr_prov/org.onap.dmaap-dr.cred.props b/scripts/dmaap-datarouter/dr_certs/dr_prov/org.onap.dmaap-dr.cred.props deleted file mode 100644 index 18f91ba8..00000000 --- a/scripts/dmaap-datarouter/dr_certs/dr_prov/org.onap.dmaap-dr.cred.props +++ /dev/null @@ -1,17 +0,0 @@ -############################################################ -# Properties Generated by AT&T Certificate Manager -# by root -# on 2021-03-12T11:29:50.699+0000 -# @copyright 2019, AT&T -############################################################ -Challenge=secret -cadi_alias=dmaap-dr-prov@dmaap-dr.onap.org -cadi_key_password=secret -#cadi_keyfile=/opt/app/osaaf/local/org.onap.dmaap-dr.keyfile -cadi_keystore=/opt/app/osaaf/local/org.onap.dmaap-dr-prov.p12 -cadi_keystore_password=secret -cadi_keystore_password_jks=secret -cadi_keystore_password_p12=secret -cadi_truststore=/opt/app/osaaf/local/truststore.jks -cadi_truststore_password=secret -cadi_x509_issuers=CN=intermediateCA_1, OU=OSAAF, O=ONAP, C=US:CN=intermediateCA_7, OU=OSAAF, O=ONAP, C=US:CN=intermediateCA_9, OU=OSAAF, O=ONAP, C=US diff --git a/scripts/dmaap-datarouter/dr_certs/dr_prov/truststore.jks b/scripts/dmaap-datarouter/dr_certs/dr_prov/truststore.jks deleted file mode 100644 index 91547c60..00000000 Binary files a/scripts/dmaap-datarouter/dr_certs/dr_prov/truststore.jks and /dev/null differ diff --git a/scripts/dmaap-datarouter/robot_ssl/onap_ca_cert.pem b/scripts/dmaap-datarouter/robot_ssl/onap_ca_cert.pem deleted file mode 100644 index 1f9d08e5..00000000 --- a/scripts/dmaap-datarouter/robot_ssl/onap_ca_cert.pem +++ /dev/null @@ -1,40 +0,0 @@ - -# Issuer: C=US,O=ONAP,OU=OSAAF -# Subject: C=US,O=ONAP,OU=OSAAF -# Label: "" -# Serial: 0x9EAEEDC0A7CEB59D -# MD5 Fingerprint: 77:EB:5E:94:2E:B7:A3:45:97:6C:87:FE:A7:F7:64:0F -# SHA1 Fingerprint: 90:25:D1:D3:8B:3C:BE:2C:73:E9:6C:1A:48:5B:06:A8:39:0D:54:3B -# SHA256 Fingerprint: 1F:C2:BB:F6:7E:11:6F:F0:4C:C3:D9:6C:73:E5:99:B7:CA:7D:4D:EF:AA:6C:69:46:0D:2C:7B:A9:E4:23:5F:EA ------BEGIN CERTIFICATE----- -MIIFczCCA1ugAwIBAgIUVl0TXS1NTKZy68+AFpfvCBbs3JwwDQYJKoZIhvcNAQEL -BQAwQTELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExDTALBgNVBAoM -BE9OQVAxDjAMBgNVBAsMBU9TQUFGMB4XDTIxMDMxNjE1MjA1MloXDTQxMDMxMTE1 -MjA1MlowQTELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExDTALBgNV -BAoMBE9OQVAxDjAMBgNVBAsMBU9TQUFGMIICIjANBgkqhkiG9w0BAQEFAAOCAg8A -MIICCgKCAgEA1NdArmwTe6C9NZnMAPP0uvy9IH/+Lc9dgO9+j6F+JqLDXn+O5vaj -6EMU5o60sGzymbMdwk26jiR7KYG8puZzI0EsjwELrLV5NYrUR1y7g+sbJWFUiB0X -SseifQD9bSG0YBX7J6bQEilh18+oWpXIygl8/VJuiuDhaYdakmwn9AxQRm/zRDcI -tMS49gq7ARpwMrZaZkQ5eL2R0eX4yj915fAgsvLNmfNTkkTCTBuGYAfixz2+uz8r -4xZqxXrln6CVe6pV5MOxxQsJq0QfSfNxKFqhVJTSj3STG8UDKDPIcTqVLS6v3/iY -WX43pHuqjfrGLy3HjPCIWphsx9EWq02bnLvwsnibRgfXjZNbdhePOZV8Xd+4MfHy -uyFRf5xHvQm3f3vLtCQ1rmHk/3wb2Mb1SbTGt6sL6Waqs/VnnPyTwhXJk6RnU991 -qAnqSCLzKNEPNnpSTQKU35NPbdCAw/z97K5Ar8JWH2XiM65dV0j0d/Ura0PXUXRN -Royi7rREJKBMFszwxqCCHZkH6/Fbs8vmBWC1gLQgDqK+IgU1/+ytUPOsMVqPcNjM -RrZyd8xCoxEyd+Ly6y2EF9RE6qS/rlW/yUh3AIBlpcsVxc+Kh1nvNRLLJzHvrvSs -wvd6LpWHVaffO02hp3suXDwOtLq91lAHLA48iDty/Js+jFjohZJ/+LsCAwEAAaNj -MGEwHQYDVR0OBBYEFMeiRem06VRh0sL0L5k9B5A01QAoMB8GA1UdIwQYMBaAFMei -Rem06VRh0sL0L5k9B5A01QAoMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQD -AgGGMA0GCSqGSIb3DQEBCwUAA4ICAQBGdpwWyOIw7jBkEJbheeje8ccc51Z0SY/8 -oo/cYi9cI2SNtE4yt9SOZtXiWO1ga1PuFP5vNkPZu3MtqtsDt8CsSgYfgCKX1DH4 -RloTJJO73UKuMmnoqHNsuE6rHRrcoqcV8XJJ9uBz2cDVWfVDG5Pf92lB1cLQ5AGb -X7O7MKNHu4woFdbbI8f3TN6Qx5oAcrS1alLMuPJhIkwcHuiWdjJuORx2MK4K9gov -yRJceVyqMiTr7GGYFi/FQKIzIaHeKgQy+YGLfQ1GcbUmVItU4aQMfSM2RXb7wJ90 -XBFi0NjXZfMXVZ9kxqIki/s6NefrDAOFjHINUxGucXjEw1raewprErlsNt/8SUKT -EDSLe1YD558jzUaqVdWinL6gMRTyyHOwt/51mg4sn3i2WLdL1Hno4F7GUIbkBmi5 -VSDDWnXdpwaFWeqA8JAvy+JIh+Ju671U1HhB68lGRvNOgfZbvW3m8GGpXldR5krR -OYhwbxdU1rNYHH+DJ0KE4L1Y6es/571+UH7NFbvO6jAk9G/Fudel+SwhXVfFo0pi -mmXAwT2bmDEiYBzDNHFwyT3+OGKXiDXuMvMB9ic7p3Zk9X0mRtpubW1gfZvUqIqe -jaVeZdad0DX1yfjwi5zYT+ViI7pjXVYlgiBAnjMrEmWOpRcs793F5zBiyDjaUNFt -3arVcS9XgA== ------END CERTIFICATE----- \ No newline at end of file diff --git a/scripts/dmaap-datarouter/robot_ssl/update_ca.py b/scripts/dmaap-datarouter/robot_ssl/update_ca.py deleted file mode 100644 index d36f8acc..00000000 --- a/scripts/dmaap-datarouter/robot_ssl/update_ca.py +++ /dev/null @@ -1,65 +0,0 @@ -# ============LICENSE_START=================================================== -# Copyright (C) 2019-2021 Nordix Foundation. -# ============================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# SPDX-License-Identifier: Apache-2.0 -# ============LICENSE_END===================================================== - -import certifi -import os - - -def add_onap_ca_cert(): - cafile = certifi.where() - dir_path = os.path.dirname(os.path.realpath(__file__)) - datarouter_ca = dir_path + '/onap_ca_cert.pem' - with open(datarouter_ca, 'rb') as infile: - customca = infile.read() - - with open(cafile, 'ab') as outfile: - outfile.write(customca) - - print("Added DR Cert to CA") - - -def remove_onap_ca_cert(): - cafile = certifi.where() - number_of_lines_to_delete = 40 - count = 0 - dr_cert_exists = False - - with open(cafile, 'r+b', buffering=0) as outfile: - for line in outfile.readlines()[-36:-35]: - if '# Serial: 0x9EAEEDC0A7CEB59D'.encode() in line: - dr_cert_exists = True - if dr_cert_exists: - outfile.seek(0, os.SEEK_END) - end = outfile.tell() - while outfile.tell() > 0: - outfile.seek(-1, os.SEEK_CUR) - char = outfile.read(1) - if char == b'\n': - count += 1 - if count == number_of_lines_to_delete: - outfile.truncate() - print( - "Removed " + str(number_of_lines_to_delete) + " lines from end of CA File") - exit(0) - outfile.seek(-1, os.SEEK_CUR) - else: - print("No DR cert in CA File to remove") - - if count < number_of_lines_to_delete + 1: - print("Number of lines in file less than number of lines to delete. Exiting...") - exit(1) diff --git a/tests/dcaegen2-services-pmsh/testcases/assets/cbs-expectation-unlocked-config.json b/tests/dcaegen2-services-pmsh/testcases/assets/cbs-expectation-unlocked-config.json index 60ac2aab..f5de1952 100644 --- a/tests/dcaegen2-services-pmsh/testcases/assets/cbs-expectation-unlocked-config.json +++ b/tests/dcaegen2-services-pmsh/testcases/assets/cbs-expectation-unlocked-config.json @@ -87,7 +87,7 @@ "dmaap_info": { "client_id": "1475976809466", "client_role": "org.onap.dcae.pmPublisher", - "topic_url": "http://dmaap:3904/events/unauthenticated.DCAE_CL_OUTPUT", + "topic_url": "http://dmaap-mr:3904/events/unauthenticated.DCAE_CL_OUTPUT", "location": "san-francisco" }, "type": "message_router" @@ -99,14 +99,14 @@ "dmaap_info": { "client_id": "1575976809466", "client_role": "org.onap.dcae.aaiSub", - "topic_url": "http://dmaap:3904/events/AAI_EVENT", + "topic_url": "http://dmaap-mr:3904/events/AAI_EVENT", "location": "san-francisco" } }, "policy_pm_subscriber": { "dmaap_info": { "location": "san-francisco", - "topic_url": "http://dmaap:3904/events/unauthenticated.PMSH_CL_INPUT", + "topic_url": "http://dmaap-mr:3904/events/unauthenticated.PMSH_CL_INPUT", "client_role": "org.onap.dcae.pmSubscriber", "client_id": "1575876809456" }, diff --git a/tests/dcaegen2-services-pmsh/testcases/pmsh.robot b/tests/dcaegen2-services-pmsh/testcases/pmsh.robot index 4b0dc6e4..71452350 100644 --- a/tests/dcaegen2-services-pmsh/testcases/pmsh.robot +++ b/tests/dcaegen2-services-pmsh/testcases/pmsh.robot @@ -7,8 +7,6 @@ Library String Library Process Resource ../../common.robot - -Test Setup CreateSessions Test Teardown Delete All Sessions @@ -44,7 +42,7 @@ Verify database tables exist and are empty [Tags] PMSH_02 [Documentation] Verify database has been created and is empty [Timeout] 10 seconds - ${resp}= Get Request pmsh_session ${SUBSCRIPTIONS_ENDPOINT} + ${resp}= GetSubsCall ${SUBSCRIPTIONS_ENDPOINT} Should Be True ${resp.status_code} == 200 Should Contain ${resp.text} [] @@ -53,8 +51,8 @@ Verify PNF detected in AAI when administrative state unlocked [Documentation] Verify PNF detected when administrative state unlocked [Timeout] 60 seconds SetAdministrativeStateToUnlocked - Sleep 31 Allow PMSH time to pick up changes in CBS config - ${resp}= Get Request pmsh_session ${SUBSCRIPTIONS_ENDPOINT} + Sleep 31 Allow PMSH time to pick up changes in CBS config + ${resp}= GetSubsCall ${SUBSCRIPTIONS_ENDPOINT} Should Be Equal As Strings ${resp.json()[0]['subscription_status']} UNLOCKED Should Be Equal As Strings ${resp.json()[0]['network_functions'][0]['nf_name']} pnf-existing Should Be Equal As Strings ${resp.json()[0]['network_functions'][0]['nf_sub_status']} PENDING_CREATE @@ -65,7 +63,7 @@ Verify Policy response on MR is handled [Timeout] 60 seconds SimulatePolicyResponse ${MR_POLICY_RESPONSE_PNF_EXISTING} Sleep 31 seconds Ensure Policy response on MR is picked up - ${resp}= Get Request pmsh_session ${SUBSCRIPTIONS_ENDPOINT} + ${resp}= GetSubsCall ${SUBSCRIPTIONS_ENDPOINT} Should Be Equal As Strings ${resp.json()[0]['network_functions'][0]['nf_sub_status']} CREATED Verify AAI event on MR detailing new PNF being detected is handled @@ -74,7 +72,7 @@ Verify AAI event on MR detailing new PNF being detected is handled [Timeout] 60 seconds SimulateNewPNF ${MR_AAI_PNF_CREATED} Sleep 31 seconds Ensure AAI event on MR is picked up - ${resp}= Get Request pmsh_session ${SUBSCRIPTIONS_ENDPOINT} + ${resp}= GetSubsCall ${SUBSCRIPTIONS_ENDPOINT} Should Be Equal As Strings ${resp.json()[0]['network_functions'][1]['nf_name']} pnf_newly_discovered Should Be Equal As Strings ${resp.json()[0]['network_functions'][1]['nf_sub_status']} PENDING_CREATE @@ -84,29 +82,25 @@ Verify AAI event on MR detailing PNF being deleted is handled [Timeout] 60 seconds SimulateDeletedPNF ${MR_AAI_PNF_REMOVED} Sleep 31 seconds Ensure AAI event on MR is picked up - ${resp}= Get Request pmsh_session ${SUBSCRIPTIONS_ENDPOINT} + ${resp}= GetSubsCall ${SUBSCRIPTIONS_ENDPOINT} Should Not Contain ${resp.text} pnf_newly_discovered *** Keywords *** -CreateSessions - Create Session pmsh_session ${PMSH_BASE_URL} - Create Session mr_sim_session ${MR_BASE_URL} - Create Session cbs_sim_session ${CBS_BASE_URL} - SetAdministrativeStateToUnlocked ${data}= Get Data From File ${CBS_EXPECTATION_ADMIN_STATE_UNLOCKED} - ${resp} = Put Request cbs_sim_session /clear data={"path": "/service_component_all/.*"} + Create Session cbs_sim_session ${CBS_BASE_URL} verify=false + ${resp}= PUT On Session cbs_sim_session url=/clear data={"path": "/service_component_all/.*"} Should Be True ${resp.status_code} == 200 - Sleep 2 Allow CBS time to set expectation - ${resp} = Put Request cbs_sim_session /expectation data=${data} + Sleep 2 Allow CBS time to set expectation + ${resp} = PUT On Session cbs_sim_session url=/expectation data=${data} Should Be True ${resp.status_code} == 201 SimulatePolicyResponse [Arguments] ${expected_contents} ${json_value}= json_from_file ${expected_contents} - ${resp}= PostCall ${POLICY_PUBLISH_MR_TOPIC} ${json_value} + ${resp}= PostMrCall ${POLICY_PUBLISH_MR_TOPIC} ${json_value} log ${resp.text} Should Be Equal As Strings ${resp.status_code} 200 ${count}= Evaluate $resp.json().get('count') @@ -115,7 +109,7 @@ SimulatePolicyResponse SimulateNewPNF [Arguments] ${expected_contents} ${json_value}= json_from_file ${expected_contents} - ${resp}= PostCall ${AAI_MR_TOPIC} ${json_value} + ${resp}= PostMrCall ${AAI_MR_TOPIC} ${json_value} log ${resp.text} Should Be Equal As Strings ${resp.status_code} 200 ${count}= Evaluate $resp.json().get('count') @@ -124,14 +118,21 @@ SimulateNewPNF SimulateDeletedPNF [Arguments] ${expected_contents} ${json_value}= json_from_file ${expected_contents} - ${resp}= PostCall ${AAI_MR_TOPIC} ${json_value} + ${resp}= PostMrCall ${AAI_MR_TOPIC} ${json_value} log ${resp.text} Should Be Equal As Strings ${resp.status_code} 200 ${count}= Evaluate $resp.json().get('count') log 'JSON Response Code:'${resp} -PostCall +PostMrCall [Arguments] ${url} ${data} - ${headers}= Create Dictionary Accept=application/json Content-Type=application/json - ${resp}= Post Request mr_sim_session ${url} json=${data} headers=${headers} - [Return] ${resp} + Create Session mr_sim_session ${MR_BASE_URL} verify=false + ${headers}= Create Dictionary Accept=application/json Content-Type=application/json + ${resp}= POST On Session mr_sim_session url=${url} json=${data} headers=${headers} + [Return] ${resp} + +GetSubsCall + [Arguments] ${url} + Create Session pmsh_session ${PMSH_BASE_URL} verify=false + ${resp}= GET On Session pmsh_session url=${url} + [Return] ${resp} diff --git a/tests/dcaegen2/prh-testcases/assets/re-registration/aai-entry-service-instance.json b/tests/dcaegen2/prh-testcases/assets/re-registration/aai-entry-service-instance.json index 6119ea8b..7ded8550 100644 --- a/tests/dcaegen2/prh-testcases/assets/re-registration/aai-entry-service-instance.json +++ b/tests/dcaegen2/prh-testcases/assets/re-registration/aai-entry-service-instance.json @@ -12,7 +12,7 @@ { "related-to": "pnf", "relationship-label": "org.onap.relationships.inventory.ComposedOf", - "related-link": "/aai/v12/network/pnfs/pnf/NOK6061ZW9", + "related-link": "/aai/v23/network/pnfs/pnf/NOK6061ZW9", "relationship-data": [ { "relationship-key": "pnf.pnf-name", @@ -22,4 +22,4 @@ } ] } -} \ No newline at end of file +} diff --git a/tests/dcaegen2/prh-testcases/assets/re-registration/aai-entry.json b/tests/dcaegen2/prh-testcases/assets/re-registration/aai-entry.json index e01e26e6..d4ba547a 100644 --- a/tests/dcaegen2/prh-testcases/assets/re-registration/aai-entry.json +++ b/tests/dcaegen2/prh-testcases/assets/re-registration/aai-entry.json @@ -25,7 +25,7 @@ { "related-to": "service-instance", "relationship-label": "org.onap.relationships.inventory.ComposedOf", - "related-link": "/aai/v12/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/bbs_service", + "related-link": "/aai/v23/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/bbs_service", "relationship-data": [ { "relationship-key": "customer.global-customer-id", @@ -50,7 +50,7 @@ { "related-to": "logical-link", "relationship-label": "org.onap.relationships.inventory.BridgedTo", - "related-link": "/aai/v12/network/logical-links/logical-link/bbs-link", + "related-link": "/aai/v23/network/logical-links/logical-link/bbs-link", "relationship-data": [ { "relationship-key": "logical-link.link-name", @@ -63,4 +63,4 @@ -} \ No newline at end of file +} diff --git a/tests/dcaegen2/prh-testcases/assets/service-instance-non-active/aai-entry-service-instance.json b/tests/dcaegen2/prh-testcases/assets/service-instance-non-active/aai-entry-service-instance.json index e925e000..1d211fd1 100644 --- a/tests/dcaegen2/prh-testcases/assets/service-instance-non-active/aai-entry-service-instance.json +++ b/tests/dcaegen2/prh-testcases/assets/service-instance-non-active/aai-entry-service-instance.json @@ -12,7 +12,7 @@ { "related-to": "pnf", "relationship-label": "org.onap.relationships.inventory.ComposedOf", - "related-link": "/aai/v12/network/pnfs/pnf/NOK6061ZW8", + "related-link": "/aai/v23/network/pnfs/pnf/NOK6061ZW8", "relationship-data": [ { "relationship-key": "pnf.pnf-name", @@ -22,4 +22,4 @@ } ] } -} \ No newline at end of file +} diff --git a/tests/dcaegen2/prh-testcases/assets/service-instance-non-active/aai-entry.json b/tests/dcaegen2/prh-testcases/assets/service-instance-non-active/aai-entry.json index 802ffd8a..e7c57bda 100644 --- a/tests/dcaegen2/prh-testcases/assets/service-instance-non-active/aai-entry.json +++ b/tests/dcaegen2/prh-testcases/assets/service-instance-non-active/aai-entry.json @@ -25,7 +25,7 @@ { "related-to": "service-instance", "relationship-label": "org.onap.relationships.inventory.ComposedOf", - "related-link": "/aai/v12/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/bbs_service", + "related-link": "/aai/v23/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/bbs_service", "relationship-data": [ { "relationship-key": "customer.global-customer-id", @@ -49,4 +49,4 @@ } ] } -} \ No newline at end of file +} diff --git a/tests/dcaegen2/prh-testcases/resources/prh_configs/prh-config.json b/tests/dcaegen2/prh-testcases/resources/prh_configs/prh-config.json index e8d6bb72..6a48e943 100644 --- a/tests/dcaegen2/prh-testcases/resources/prh_configs/prh-config.json +++ b/tests/dcaegen2/prh-testcases/resources/prh_configs/prh-config.json @@ -15,12 +15,12 @@ "dmaap.dmaapUpdateProducerConfiguration.dmaapUserName": "admin", "dmaap.dmaapUpdateProducerConfiguration.dmaapUserPassword": "admin", "dmaap.dmaapUpdateProducerConfiguration.dmaapContentType": "application/json", - "aai.aaiClientConfiguration.pnfUrl": "https://aai:3334/aai/v12/network/pnfs/pnf", - "aai.aaiClientConfiguration.baseUrl": "https://aai:3334/aai/v12", + "aai.aaiClientConfiguration.pnfUrl": "https://aai:3334/aai/v23/network/pnfs/pnf", + "aai.aaiClientConfiguration.baseUrl": "https://aai:3334/aai/v23", "aai.aaiClientConfiguration.aaiUserName": "DCAE", "aai.aaiClientConfiguration.aaiUserPassword": "DCAE", "aai.aaiClientConfiguration.aaiIgnoreSslCertificateErrors": true, - "aai.aaiClientConfiguration.aaiServiceInstancePath": "/business/customers/customer/${customer}/service-subscriptions/service-subscription/${serviceType}/service-instances/service-instance/${serviceInstanceId}", + "aai.aaiClientConfiguration.aaiServiceInstancePath": "/business/customers/customer/{{customer}}/service-subscriptions/service-subscription/{{serviceType}}/service-instances/service-instance/{{serviceInstanceId}}", "aai.aaiClientConfiguration.aaiHeaders": { "X-FromAppId": "prh", "X-TransactionId": "9999", @@ -56,4 +56,4 @@ } } } -} \ No newline at end of file +} diff --git a/tests/dcaegen2/prh-testcases/resources/prh_configs/prh-no-auth-config.json b/tests/dcaegen2/prh-testcases/resources/prh_configs/prh-no-auth-config.json index 734a6f70..e4b88796 100644 --- a/tests/dcaegen2/prh-testcases/resources/prh_configs/prh-no-auth-config.json +++ b/tests/dcaegen2/prh-testcases/resources/prh_configs/prh-no-auth-config.json @@ -15,12 +15,12 @@ "dmaap.dmaapUpdateProducerConfiguration.dmaapUserName": "admin", "dmaap.dmaapUpdateProducerConfiguration.dmaapUserPassword": "admin", "dmaap.dmaapUpdateProducerConfiguration.dmaapContentType": "application/json", - "aai.aaiClientConfiguration.pnfUrl": "http://aai:3333/aai/v12/network/pnfs/pnf", - "aai.aaiClientConfiguration.baseUrl": "https://aai:3334/aai/v12", + "aai.aaiClientConfiguration.pnfUrl": "http://aai:3333/aai/v23/network/pnfs/pnf", + "aai.aaiClientConfiguration.baseUrl": "https://aai:3334/aai/v23", "aai.aaiClientConfiguration.aaiUserName": "DCAE", "aai.aaiClientConfiguration.aaiUserPassword": "DCAE", "aai.aaiClientConfiguration.aaiIgnoreSslCertificateErrors": true, - "aai.aaiClientConfiguration.aaiServiceInstancePath": "/business/customers/customer/${customer}/service-subscriptions/service-subscription/${serviceType}/service-instances/service-instance/${serviceInstanceId}", + "aai.aaiClientConfiguration.aaiServiceInstancePath": "/business/customers/customer/{{customer}}/service-subscriptions/service-subscription/{{serviceType}}/service-instances/service-instance/{{serviceInstanceId}}", "aai.aaiClientConfiguration.aaiHeaders": { "X-FromAppId": "prh", "X-TransactionId": "9999", @@ -56,4 +56,4 @@ } } } -} \ No newline at end of file +} diff --git a/tests/dcaegen2/prh-testcases/resources/prh_library.robot b/tests/dcaegen2/prh-testcases/resources/prh_library.robot index c53d5d1e..e3a5c2e4 100644 --- a/tests/dcaegen2/prh-testcases/resources/prh_library.robot +++ b/tests/dcaegen2/prh-testcases/resources/prh_library.robot @@ -50,7 +50,7 @@ Verify missing AAI record is logged ${ves_event}= Get Data From File ${test_case_directory}/ves-event.json Add PNF entry in AAI ${incorrect_aai_entry} Set VES event in DMaaP ${ves_event} - Wait for PRH log entry 20s Request failed for URL 'https://aai:3334/aai/v12/network/pnfs/pnf/NOK6061ZW8'. Response code: 404 Not Found + Wait for PRH log entry 20s Request failed for URL 'https://aai:3334/aai/v23/network/pnfs/pnf/NOK6061ZW8'. Response code: 404 Not Found Verify AAI not responding is logged [Arguments] ${test_case_directory} diff --git a/tests/dcaegen2/prh-testcases/resources/simulator/AAI.py b/tests/dcaegen2/prh-testcases/resources/simulator/AAI.py index 05a4e19d..c6a320a3 100644 --- a/tests/dcaegen2/prh-testcases/resources/simulator/AAI.py +++ b/tests/dcaegen2/prh-testcases/resources/simulator/AAI.py @@ -108,25 +108,25 @@ class AAIHandler(BaseHTTPRequestHandler): def do_GET(self): try: - if re.search('/aai/v12/network/pnfs/pnf/[^/]*$', self.path): + if re.search('/aai/v23/network/pnfs/pnf/[^/]*$', self.path): pnf_name = basename(self.path) if pnf_name in pnf_entries: httpServerLib.set_response_200_ok(self, payload = pnf_entries[pnf_name]) - logger.debug('AAIHandler GET /aai/v12/network/pnfs/pnf/' + pnf_name + ' -> 200 OK') + logger.debug('AAIHandler GET /aai/v23/network/pnfs/pnf/' + pnf_name + ' -> 200 OK') else: httpServerLib.set_response_404_not_found(self) - logger.info('AAIHandler GET /aai/v12/network/pnfs/pnf/' + pnf_name + ' -> 404 Not found, actual entries: ' + str(pnf_entries.keys())) - elif re.search('/aai/v12/network/logical-links/logical-link/[^/]*$', self.path): + logger.info('AAIHandler GET /aai/v23/network/pnfs/pnf/' + pnf_name + ' -> 404 Not found, actual entries: ' + str(pnf_entries.keys())) + elif re.search('/aai/v23/network/logical-links/logical-link/[^/]*$', self.path): logical_link_name = basename(self.path) if json.loads(created_logical_link).get("link-name") == logical_link_name: httpServerLib.set_response_200_ok(self, payload = created_logical_link) - logger.debug('AAIHandler GET /aai/v12/network/logical-links/logical-link/' + logical_link_name + ' -> 200 OK') + logger.debug('AAIHandler GET /aai/v23/network/logical-links/logical-link/' + logical_link_name + ' -> 200 OK') else: httpServerLib.set_response_404_not_found(self) - logger.info('AAIHandler GET /aai/v12/network/logical-links/logical-link/' + logical_link_name + ' -> 404 Not found, actual link: ' + created_logical_link) - elif re.search('aai/v12/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/bbs_service', self.path): + logger.info('AAIHandler GET /aai/v23/network/logical-links/logical-link/' + logical_link_name + ' -> 404 Not found, actual link: ' + created_logical_link) + elif re.search('aai/v23/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/bbs_service', self.path): httpServerLib.set_response_200_ok(self, payload = json.dumps(service_instance).encode('utf-8')) - logger.debug('AAIHandler GET aai/v12/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/bbs_service -> 200 OK') + logger.debug('AAIHandler GET aai/v23/business/customers/customer/Demonstration/service-subscriptions/service-subscription/vFW/service-instances/service-instance/bbs_service -> 200 OK') else: httpServerLib.set_response_404_not_found(self) logger.info('AAIHandler GET ' + self.path + ' -> 404 Not found') @@ -136,17 +136,17 @@ class AAIHandler(BaseHTTPRequestHandler): def do_PATCH(self): try: - if re.search('/aai/v12/network/pnfs/pnf/[^/]*$', self.path): + if re.search('/aai/v23/network/pnfs/pnf/[^/]*$', self.path): pnf_name = basename(self.path) if pnf_name in pnf_entries: global patched_pnf patched_pnf = httpServerLib.get_payload(self) httpServerLib.set_response_200_ok(self) - logger.debug('AAIHandler PATCH /aai/v12/network/pnfs/pnf/' + pnf_name + ' -> 200 OK') + logger.debug('AAIHandler PATCH /aai/v23/network/pnfs/pnf/' + pnf_name + ' -> 200 OK') else: httpServerLib.set_response_404_not_found(self) - logger.info('AAIHandler PATCH /aai/v12/network/pnfs/pnf/' + pnf_name + ' -> 404 Not found, actual entries: ' + str(pnf_entries.keys())) + logger.info('AAIHandler PATCH /aai/v23/network/pnfs/pnf/' + pnf_name + ' -> 404 Not found, actual entries: ' + str(pnf_entries.keys())) else: httpServerLib.set_response_404_not_found(self) logger.info('AAIHandler PATCH ' + self.path + ' -> 404 Not found') @@ -156,14 +156,14 @@ class AAIHandler(BaseHTTPRequestHandler): def do_PUT(self): try: - if re.search('/aai/v12/network/logical-links/logical-link/[^/]*$', self.path): + if re.search('/aai/v23/network/logical-links/logical-link/[^/]*$', self.path): global created_logical_link created_logical_link = httpServerLib.get_payload(self) httpServerLib.set_response_200_ok(self) logical_link_name = basename(self.path) - logger.debug('AAIHandler PUT /aai/v12/network/logical-links/logical-link/' + logical_link_name + ' -> 200 OK') + logger.debug('AAIHandler PUT /aai/v23/network/logical-links/logical-link/' + logical_link_name + ' -> 200 OK') else: httpServerLib.set_response_404_not_found(self) logger.info('AAIHandler PUT ' + self.path + ' -> 404 Not found') @@ -173,7 +173,7 @@ class AAIHandler(BaseHTTPRequestHandler): def do_DELETE(self): try: - if re.search('/aai/v12/network/logical-links/logical-link/[^/]*\?resource-version=\d+$', self.path): + if re.search('/aai/v23/network/logical-links/logical-link/[^/]*\?resource-version=\d+$', self.path): httpServerLib.set_response_200_ok(self) logical_link_name = re.search('.+?(?=\?)', basename(self.path)).group(0) @@ -181,7 +181,7 @@ class AAIHandler(BaseHTTPRequestHandler): if json.loads(created_logical_link).get("link-name") == logical_link_name: created_logical_link = AAI_RESOURCE_NOT_FOUND - logger.debug('AAIHandler DELETE /aai/v12/network/logical-links/logical-link/' + logical_link_name + ' -> 200 OK') + logger.debug('AAIHandler DELETE /aai/v23/network/logical-links/logical-link/' + logical_link_name + ' -> 200 OK') else: httpServerLib.set_response_404_not_found(self) logger.info('AAIHandler DELETE ' + self.path + ' -> 404 Not found') @@ -199,4 +199,4 @@ def _main_(handler_class=AAIHandler, protocol="HTTP/1.0"): if __name__ == '__main__': - _main_() \ No newline at end of file + _main_() diff --git a/tests/dmaap-buscontroller/with_dr/__init__.robot b/tests/dmaap-buscontroller/with_dr/__init__.robot deleted file mode 100644 index 2d404124..00000000 --- a/tests/dmaap-buscontroller/with_dr/__init__.robot +++ /dev/null @@ -1,2 +0,0 @@ -*** Settings *** -Documentation dmaap-buscontroller - dr diff --git a/tests/dmaap-buscontroller/with_dr/test1.robot b/tests/dmaap-buscontroller/with_dr/test1.robot deleted file mode 100644 index 671e89b7..00000000 --- a/tests/dmaap-buscontroller/with_dr/test1.robot +++ /dev/null @@ -1,76 +0,0 @@ -*** Settings *** -Resource ../../common.robot -Library Collections -Library json -Library OperatingSystem -Library RequestsLibrary -Library HttpLibrary.HTTP -Library String - - -*** Variables *** -${DBC_URI} webapi -${DBC_URL} http://${DMAAPBC_IP}:8080/${DBC_URI} -${LOC} csit-sanfrancisco -${FEED1_DATA} { "feedName":"feed1", "feedVersion": "csit", "feedDescription":"generated for CSIT", "owner":"dgl", "asprClassification": "unclassified" } -${FEED2_DATA} { "feedName":"feed2", "feedVersion": "csit", "feedDescription":"generated for CSIT", "owner":"dgl", "asprClassification": "unclassified" } -${PUB2_DATA} { "dcaeLocationName": "${LOC}", "username": "pub2", "userpwd": "topSecret123", "feedId": "2" } -${SUB2_DATA} { "dcaeLocationName": "${LOC}", "username": "sub2", "userpwd": "someSecret123", "deliveryURL": "https://${DMAAPBC_IP}:8443/webapi/noURI", "feedId": "2" } - - -*** Test Cases *** -(DMAAP-441c1) - [Documentation] Create Feed w no clients POST ${DBC_URI}/feeds endpoint - ${resp}= PostCall ${DBC_URL}/feeds ${FEED1_DATA} - Should Be Equal As Integers ${resp.status_code} 200 - -(DMAAP-441c2) - [Documentation] Create Feed w clients POST ${DBC_URI}/feeds endpoint - ${resp}= PostCall ${DBC_URL}/feeds ${FEED2_DATA} - Should Be Equal As Integers ${resp.status_code} 200 - -(DMAAP-441c3) - [Documentation] Add Publisher to existing feed - ${resp}= PostCall ${DBC_URL}/dr_pubs ${PUB2_DATA} - Should Be Equal As Integers ${resp.status_code} 201 - ${JSON}= Evaluate json.loads(r"""${resp.content}""", strict=False) - ${result}= Set Variable ${JSON['pubId']} - Set Suite Variable ${pubId} ${result} - -(DMAAP-441c4) - [Documentation] Add Subscriber to existing feed - ${resp}= PostCall ${DBC_URL}/dr_subs ${SUB2_DATA} - Should Be Equal As Integers ${resp.status_code} 201 - ${JSON}= Evaluate json.loads(r"""${resp.content}""", strict=False) - ${result}= Set Variable ${JSON['subId']} - Set Suite Variable ${subId} ${result} - -(DMAAP-443) - [Documentation] List existing feeds - Create Session get ${DBC_URL} - ${resp}= GET On Session get /feeds - Should Be Equal As Integers ${resp.status_code} 200 - -(DMAAP-444) - [Documentation] Delete existing subscriber - ${resp}= DelCall ${DBC_URL}/dr_subs/${subId} - Should Be Equal As Integers ${resp.status_code} 204 - -(DMAAP-445) - [Documentation] Delete existing publisher - ${resp}= DelCall ${DBC_URL}/dr_pubs/${pubId} - Should Be Equal As Integers ${resp.status_code} 204 - - -*** Keywords *** -PostCall - [Arguments] ${url} ${data} - ${headers}= Create Dictionary Accept=application/json Content-Type=application/json - ${resp}= Evaluate requests.post('${url}',data='${data}', headers=${headers},verify=False) requests - [Return] ${resp} - -DelCall - [Arguments] ${url} - ${headers}= Create Dictionary Accept=application/json Content-Type=application/json - ${resp}= Evaluate requests.delete('${url}', headers=${headers},verify=False) requests - [Return] ${resp} diff --git a/tests/dmaap-buscontroller/with_mr/__init__.robot b/tests/dmaap-buscontroller/with_mr/__init__.robot deleted file mode 100644 index ffcec41b..00000000 --- a/tests/dmaap-buscontroller/with_mr/__init__.robot +++ /dev/null @@ -1,3 +0,0 @@ -*** Settings *** -Documentation dmaap-buscontroller - mr - diff --git a/tests/dmaap-buscontroller/with_mr/test1.robot b/tests/dmaap-buscontroller/with_mr/test1.robot deleted file mode 100644 index 37d3e158..00000000 --- a/tests/dmaap-buscontroller/with_mr/test1.robot +++ /dev/null @@ -1,87 +0,0 @@ -*** Settings *** -Resource ../../common.robot -Library Collections -Library json -Library OperatingSystem -Library RequestsLibrary -Library HttpLibrary.HTTP -Library String - - -*** Variables *** -${DBC_URI} webapi -${DBC_URL} http://${DMAAP_BC_IP}:8080/${DBC_URI} -${TOPIC_NS} org.onap.dmaap.onapCSIT -${LOC} csit-sanfrancisco -${PUB_CORE} "dcaeLocationName": "${LOC}", "clientRole": "org.onap.dmaap.client.pub", "action": [ "pub", "view" ] -${SUB_CORE} "dcaeLocationName": "${LOC}", "clientRole": "org.onap.dmaap.client.sub", "action": [ "sub", "view" ] -${PUB} { ${PUB_CORE} } -${SUB} { ${SUB_CORE} } -${TOPIC1_DATA} { "topicName":"singleMRtopic1", "topicDescription":"generated for CSIT", "owner":"dgl"} -${TOPIC2_DATA} { "topicName":"singleMRtopic2", "topicDescription":"generated for CSIT", "owner":"dgl", "clients": [ ${PUB}, ${SUB}] } -${TOPIC3_DATA} { "topicName":"singleMRtopic3", "topicDescription":"generated for CSIT", "owner":"dgl"} -${PUB3_DATA} { "fqtn": "${TOPIC_NS}.singleMRtopic3", ${PUB_CORE} } -${SUB3_DATA} { "fqtn": "${TOPIC_NS}.singleMRtopic3", ${SUB_CORE} } - - -*** Test Cases *** -(DMAAP-293) - [Documentation] Create Topic w no clients POST ${DBC_URI}/topics endpoint - ${resp}= PostCall ${DBC_URL}/topics ${TOPIC1_DATA} - Should Be Equal As Integers ${resp.status_code} 201 - -(DMAAP-294) - [Documentation] Create Topic w pub and sub clients POST ${DBC_URI}/topics endpoint - ${resp}= PostCall ${DBC_URL}/topics ${TOPIC2_DATA} - Should Be Equal As Integers ${resp.status_code} 201 - -(DMAAP-295) - [Documentation] Create Topic w no clients and then add a client POST ${DBC_URI}/mr_clients endpoint - ${resp}= PostCall ${DBC_URL}/topics ${TOPIC3_DATA} - Should Be Equal As Integers ${resp.status_code} 201 - ${resp}= PostCall ${DBC_URL}/mr_clients ${PUB3_DATA} - Should Be Equal As Integers ${resp.status_code} 200 - ${resp}= PostCall ${DBC_URL}/mr_clients ${SUB3_DATA} - Should Be Equal As Integers ${resp.status_code} 200 - -(DMAAP-297) - [Documentation] Query for all topics and specific topic - Create Session get ${DBC_URL} - ${resp}= GET On Session get /topics - Should Be Equal As Integers ${resp.status_code} 200 - ${resp}= GET On Session get /topics/${TOPIC_NS}.singleMRtopic3 - Should Be Equal As Integers ${resp.status_code} 200 - -(DMAAP-301) - [Documentation] Delete a subscriber - Create Session get ${DBC_URL} - ${resp}= GET On Session get /topics/${TOPIC_NS}.singleMRtopic3 - Should Be Equal As Integers ${resp.status_code} 200 - ${JSON}= Evaluate json.loads(r"""${resp.content}""", strict=False) - ${clientId}= Set Variable ${JSON['clients'][1]['mrClientId']} - ${resp}= DelCall ${DBC_URL}/mr_clients/${clientId} - Should Be Equal As Integers ${resp.status_code} 204 - -(DMAAP-302) - [Documentation] Delete a publisher - Create Session get ${DBC_URL} - ${resp}= GET On Session get /topics/${TOPIC_NS}.singleMRtopic3 - Should Be Equal As Integers ${resp.status_code} 200 - ${JSON}= Evaluate json.loads(r"""${resp.content}""", strict=False) - ${clientId}= Set Variable ${JSON['clients'][0]['mrClientId']} - ${resp}= DelCall ${DBC_URL}/mr_clients/${clientId} - Should Be Equal As Integers ${resp.status_code} 204 - - -*** Keywords *** -PostCall - [Arguments] ${url} ${data} - ${headers}= Create Dictionary Accept=application/json Content-Type=application/json - ${resp}= Evaluate requests.post('${url}',data='${data}', headers=${headers},verify=False) requests - [Return] ${resp} - -DelCall - [Arguments] ${url} - ${headers}= Create Dictionary Accept=application/json Content-Type=application/json - ${resp}= Evaluate requests.delete('${url}', headers=${headers},verify=False) requests - [Return] ${resp} diff --git a/tests/dmaap-datarouter/ssl-dr-suite/ssl-dr-suite.robot b/tests/dmaap-datarouter/ssl-dr-suite/ssl-dr-suite.robot deleted file mode 100755 index 2f96cdc8..00000000 --- a/tests/dmaap-datarouter/ssl-dr-suite/ssl-dr-suite.robot +++ /dev/null @@ -1,179 +0,0 @@ -*** Settings *** -Library OperatingSystem -Library RequestsLibrary -Library requests -Library Collections -Library Process -Library String - -*** Variables *** -${TARGET_URL} https://dmaap-dr-prov:8443/ -${TARGET_URL_FEED} https://dmaap-dr-prov:8443/feed/1 -${TARGET_URL_EXISTS_LOGGING} https://dmaap-dr-prov:8443/feedlog/1?type=pub&filename=csit_test -${TARGET_URL_NOT_EXISTS_LOGGING} https://dmaap-dr-prov:8443/feedlog/1?type=pub&filename=file_that_doesnt_exist -${TARGET_URL_SUBSCRIBE} https://dmaap-dr-prov:8443/subscribe/1 -${TARGET_URL_SUBSCRIPTION} https://dmaap-dr-prov:8443/subs/1 -${TARGET_URL_PUBLISH_PROV} https://dmaap-dr-prov:8443/publish/1/csit_test -${TARGET_URL_PUBLISH_NODE} https://dmaap-dr-node:8443/publish/1/csit_test -${TARGET_URL_DELETE_FILE} https://dmaap-dr-node:8443/delete/2 - -${FEED_CONTENT_TYPE} application/vnd.dmaap-dr.feed -${SUBSCRIBE_CONTENT_TYPE} application/vnd.dmaap-dr.subscription -${PUBLISH_FEED_CONTENT_TYPE} application/octet-stream - -${CREATE_FEED_DATA} {"name": "CSIT_Test", "version": "m1.0", "description": "CSIT_Test", "business_description": "CSIT_Test", "suspend": false, "deleted": false, "changeowner": true, "authorization": {"classification": "unclassified", "endpoint_addrs": [], "endpoint_ids": [{"password": "dradmin", "id": "dradmin"}]}} -${UPDATE_FEED_DATA} {"name": "CSIT_Test", "version": "m1.0", "description": "UPDATED-CSIT_Test", "business_description": "CSIT_Test", "suspend": true, "deleted": false, "changeowner": true, "authorization": {"classification": "unclassified", "endpoint_addrs": [], "endpoint_ids": [{"password": "dradmin", "id": "dradmin"}]}} -${SUBSCRIBE_DATA} {"delivery":{ "url":"http://${DR_SUB_IP}:7070/", "user":"LOGIN", "password":"PASSWORD", "use100":true}, "metadataOnly":false, "suspend":false, "groupid":29, "subscriber":"dradmin", "privilegedSubscriber":false} -${UPDATE_SUBSCRIPTION_DATA} {"delivery":{ "url":"http://${DR_SUB_IP}:7070/", "user":"dradmin", "password":"dradmin", "use100":true}, "metadataOnly":false, "suspend":true, "groupid":29, "subscriber":"dradmin", "privilegedSubscriber":false} -${SUBSCRIBE2_DATA} {"delivery":{ "url":"http://${DR_SUB2_IP}:7070/", "user":"LOGIN", "password":"PASSWORD", "use100":true}, "metadataOnly":false, "suspend":false, "groupid":29, "subscriber":"privileged", "privilegedSubscriber":true} - -${CLI_VERIFY_SUB_RECEIVED_FILE} docker exec subscriber-node /bin/sh -c "ls /opt/app/subscriber/delivery | grep csit_test" -${CLI_VERIFY_FILE_REMAINS_ON_NODE} docker exec datarouter-node /bin/sh -c "ls /opt/app/datartr/spool/s/0/2 | grep dmaap-dr-node | grep -v .M" - -*** Test Cases *** -Run Feed Creation - [Documentation] Feed Creation - [Timeout] 1 minute - ${resp}= PostCall ${TARGET_URL} ${CREATE_FEED_DATA} ${FEED_CONTENT_TYPE} dradmin - log ${TARGET_URL} - log ${resp.text} - Should Be Equal As Strings ${resp.status_code} 201 - log 'JSON Response Code:'${resp} - -Run Subscribe to Feed - [Documentation] Subscribe to Feed - [Timeout] 1 minute - ${resp}= PostCall ${TARGET_URL_SUBSCRIBE} ${SUBSCRIBE_DATA} ${SUBSCRIBE_CONTENT_TYPE} dradmin - log ${TARGET_URL_SUBSCRIBE} - log ${resp.text} - Should Be Equal As Strings ${resp.status_code} 201 - log 'JSON Response Code:'${resp} - -Run Subscribe to Feed with Privileged Subscription - [Documentation] Subscribe to Feed with privileged subscription - [Timeout] 1 minute - ${resp}= PostCall ${TARGET_URL_SUBSCRIBE} ${SUBSCRIBE2_DATA} ${SUBSCRIBE_CONTENT_TYPE} privileged - log ${TARGET_URL_SUBSCRIBE} - log ${resp.text} - Should Be Equal As Strings ${resp.status_code} 201 - log 'JSON Response Code:'${resp} - -Run Publish to Feed - [Documentation] Publish to Feed - [Timeout] 1 minute - Sleep 10s Behaviour was noticed where feed was not created in time for publish to be sent - ${resp}= PutCall ${TARGET_URL_PUBLISH_PROV} ${CREATE_FEED_DATA} ${PUBLISH_FEED_CONTENT_TYPE} dradmin - log ${TARGET_URL_PUBLISH_PROV} - Should Contain ${resp.headers['Location']} https://dmaap-dr-node:8443/publish/1/csit_test - ${resp}= PutCall ${TARGET_URL_PUBLISH_NODE} ${CREATE_FEED_DATA} ${PUBLISH_FEED_CONTENT_TYPE} dradmin - Should Be Equal As Strings ${resp.status_code} 204 - log 'JSON Response Code:'${resp} - -Verify Subscriber Received Published File - [Documentation] Verify file is delivered to datarouter-subscriber - [Timeout] 1 minute - Sleep 5s Time to allow subscriber to receive the file - ${cli_cmd_output}= Run Process ${CLI_VERIFY_SUB_RECEIVED_FILE} shell=yes - Log ${cli_cmd_output.stdout} - Should Be Equal As Strings ${cli_cmd_output.rc} 0 - Should Contain ${cli_cmd_output.stdout} csit_test - - -Verify File Remains On Privileged Subscriber And Delete It - [Documentation] Verify file has not been deleted on datarouter-node and delete it using DELETE API - [Timeout] 1 minute - ${cli_cmd_output}= Run Process ${CLI_VERIFY_FILE_REMAINS_ON_NODE} shell=yes - log ${cli_cmd_output.stdout} - Should Be Equal As Strings ${cli_cmd_output.rc} 0 - Should Contain ${cli_cmd_output.stdout} dmaap-dr-node - ${resp}= DeleteCall ${TARGET_URL_DELETE_FILE}/${cli_cmd_output.stdout} dradmin - Should Be Equal As Strings ${resp.status_code} 200 - log 'JSON Response Code:'${resp} - ${cli_cmd_output}= Run Process ${CLI_VERIFY_FILE_REMAINS_ON_NODE} shell=yes - log ${cli_cmd_output.stdout} - Should Be Equal As Strings ${cli_cmd_output.rc} 1 - -Run Update Subscription - [Documentation] Update Subscription to suspend and change delivery credentials - [Timeout] 1 minute - ${resp}= PutCall ${TARGET_URL_SUBSCRIPTION} ${UPDATE_SUBSCRIPTION_DATA} ${SUBSCRIBE_CONTENT_TYPE} dradmin - log ${TARGET_URL_SUBSCRIPTION} - log ${resp.text} - Should Be Equal As Strings ${resp.status_code} 200 - log 'JSON Response Code:'${resp} - ${resp}= GetCall ${TARGET_URL_SUBSCRIPTION} ${SUBSCRIBE_CONTENT_TYPE} dradmin - log ${resp.text} - Should Contain ${resp.text} "password":"dradmin","user":"dradmin" - log 'JSON Response Code:'${resp} - -Run Update Feed - [Documentation] Update Feed description and suspend - [Timeout] 1 minute - ${resp}= PutCall ${TARGET_URL_FEED} ${UPDATE_FEED_DATA} ${FEED_CONTENT_TYPE} dradmin - log ${TARGET_URL_FEED} - log ${resp.text} - Should Be Equal As Strings ${resp.status_code} 200 - log 'JSON Response Code:'${resp} - ${resp}= GetCall ${TARGET_URL_FEED} ${FEED_CONTENT_TYPE} dradmin - log ${resp.text} - Should Contain ${resp.text} "UPDATED-CSIT_Test" - log 'JSON Response Code:'${resp} - -Run Get With Filename That Exists - [Documentation] Get publish record with a specified filename - [Timeout] 2 minutes - sleep 1 minute 45 seconds needed to ensure logs have been updated - ${resp}= GetCall ${TARGET_URL_EXISTS_LOGGING} ${FEED_CONTENT_TYPE} dradmin - log ${resp.text} - Should Contain ${resp.text} "fileName":"csit_test" - log 'JSON Response Code:'${resp} - -Run Get With Filename That Doesnt Exist - [Documentation] Get publish record with a specified filename - [Timeout] 1 minute - ${resp}= GetCall ${TARGET_URL_NOT_EXISTS_LOGGING} ${FEED_CONTENT_TYPE} dradmin - log ${resp.text} - Should Contain ${resp.text} [] - log 'JSON Response Code:'${resp} - - -Run Delete Subscription - [Documentation] Delete Subscription - [Timeout] 1 minute - ${resp}= DeleteCall ${TARGET_URL_SUBSCRIPTION} dradmin - log ${resp.text} - Should Be Equal As Strings ${resp.status_code} 204 - log 'JSON Response Code:'${resp} - -Run Delete Feed - [Documentation] Delete Feed - [Timeout] 1 minute - ${resp}= DeleteCall ${TARGET_URL_FEED} dradmin - log ${resp.text} - Should Be Equal As Strings ${resp.status_code} 204 - log 'JSON Response Code:'${resp} - -*** Keywords *** -PostCall - [Arguments] ${url} ${data} ${content_type} ${user} - ${headers}= Create Dictionary X-DMAAP-DR-ON-BEHALF-OF=${user} Content-Type=${content_type} - ${resp}= Evaluate requests.post('${url}', data='${data}', headers=${headers}, verify=True) requests - [Return] ${resp} - -PutCall - [Arguments] ${url} ${data} ${content_type} ${user} - ${headers}= Create Dictionary X-DMAAP-DR-ON-BEHALF-OF=${user} Content-Type=${content_type} Authorization=Basic ZHJhZG1pbjpkcmFkbWlu - ${resp}= Evaluate requests.put('${url}', data='${data}', headers=${headers}, verify=True, allow_redirects=False) requests - [Return] ${resp} - -GetCall - [Arguments] ${url} ${content_type} ${user} - ${headers}= Create Dictionary X-DMAAP-DR-ON-BEHALF-OF=${user} Content-Type=${content_type} - ${resp}= Evaluate requests.get('${url}', headers=${headers}, verify=True) requests - [Return] ${resp} - -DeleteCall - [Arguments] ${url} ${user} - ${headers}= Create Dictionary X-DMAAP-DR-ON-BEHALF-OF=${user} - ${resp}= Evaluate requests.delete('${url}', headers=${headers}, verify=True) requests - [Return] ${resp} diff --git a/tests/oom-platform-cert-service/certservice/assets/invalid_ir_for_update.key b/tests/oom-platform-cert-service/certservice/assets/invalid_ir_for_update.key new file mode 100644 index 00000000..63b4c918 --- /dev/null +++ b/tests/oom-platform-cert-service/certservice/assets/invalid_ir_for_update.key @@ -0,0 +1 @@ +LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRRERPVGZBU1QvNXNtemQKbjN3MjhNRjFBWFdQc1Z3SzE0cE9GampFV1hTd1FBZi8zTUNtU08zOXZYVjRsclJTb2RjZ0xEZFNKbUs4K0NjUgpZUGJUc05ucGtUSjRVdFdRZlpNQlFTVEMxTWJTWTJBQ2k0VlBWeWVjUGZJanMyMjEzN1JLaUhxSms1QXNQUGRiCkFVNHBuMU5FODJXclBIYUo4enVuR3ZWbG15T2k1RWgrVy9jNk1ONlJpVlhhTmVLUEhxS1JpNmlZRzVnVkVrQTcKaFpXM0dNd3JwUUpIalZhaWlwWW4rUXJJbUdmUmJBdXZVQWxNTkI1ZWR0NmMzclhzZE9Ya0dKZFNNR1U4U1gvegpvQmlaMTVCSkdzYlhxdURqRGNuVHJBMEE1OGdxOHZTdXZlZnJkbUdFYkdUT2RObDA0QUJUR1dEZ0ljMlU0TGcyCm50RmhxejFIQWdNQkFBRUNnZ0VBSFQ0LzdLek1TWUlCcnIwS0pVeXhIZTdIQm14QjVsbmRITTlWVjR3eTM0Zm4KNnRyTmZOc2wwMEdERERvKzdyWFJmTDlDMWlwcjFmU3lIWGRSNGVuMjZuYldnWkdlN2hMeFoxbXp3UCtRZk1sbwpBMW1VOFlxVG8yTGdGNXIwRHk5Z1dWM1NSVE4yZ0RudHI1TWxlelNqaTR1T0tqVlhhRmlvRWVNRzZWNXcyeUJsCnN2d1FZajhVSThobnIwaVFKemt6VXFrRG1OM1RRTytZSVBqbVd4dWxLVEMzN2g0VnltMzdYU3l5M0tmRkw2V2UKWmd1anNIK0t6Q1kzZUhXWHJaUi9mMXJSVmZJemE4ZDVTbjdWTFhjYXZKbzB6Z1pnang3L3VtMGhxVjVFODFjUwp5dmF0NXAxVnlvbE8yRG1UVXVrT3JLemdGVTBxb2h4VExTZ3Y0TE9DYVFLQmdRRDJwVkxrZlRqRWNyQTZPWFE3CmU3YUVYRDlETGZJaXJDdVR0bjdycHBPQWZqYXVYNmdzTGc1WWQ5dXBoQVlkU1VhcUNUTWdTKzZ4Y0tjc2xhWHkKaFp6U1JuQWQrT0ZKaUova2JCMTR3OUpDRWxmQzlpMEc0VzE4dTdxMnJIZ3lhZDlYUUNSODZKTUZuRldWdi81MQpnd3hBd29XMG91b1hlSEZQNjQxZXRjcDVPd0tCZ1FES29LTDRweUZsOU9iV29zSUlUQmJmakZ5SC93YVhHNVlLCm5oWGloWURHK1kyeURJSFhFcCtiWjhaaXFyTU1XbFZjd1U5N0ZQOGRGcXlHOVFTb1RaSVZWejNNMnJDdCtDdU0KWjhWait5VzIxK1QxQXNMcU5xQm96WEdiMXJGLzlyNHV1N2t1Ly96R0VmNGFqK3pFUXQxOFpaWld4NHo4VGIrUApydTgxS0gyclpRS0JnUURSOXA4QUg1RnB1bkJHd0k0djdQck01bko4VCtxbWxZWnJNcG9OSlRxLzBiSGU4MU9JCmVKU0J2MWJoa2FCYTRmd2oxNzBNSzFmQStiTjJndFpJQkhJaGx4RHVrdVhGNFdhcjMxV2ZicVBZMXlDYXVWSlAKWHl3RFdSUnpXWkxnNTd2VzNLV3pKNUd3M3dzRWRmSzZPcHI5cmhxQVVZZVIvMWdHdnZFVHhSSGQ3UUtCZ0ZRbgo0V2ZxYWhtaFhGcGFvTUczY0d5S0xFZ2phRVpNSThYbklHbkRUdGZVLzcrcUtDYitTaUhPT1B2enI0ZDY0U2N6CjltSEZONnVLSmorcTliTTgvR1kycEtrM1R0Z0NVWHZ3QVhCajk2YjRCZFNvdi9Gc25MVEtWdHdGa0JUNGtzWncKR3hwbElVUFdaelg2L3JnSW1WcTRDbmVpUzNEaWphUU1ZTGN3U1BsdEFvR0FHRWZ6Z0RBMzZ1WkJ3ZEhXM0pLQwp5Y2kxeSt5Wjg3YllKUkE0Ujd3ZE1RakRzdTNYMXdBdWxhM2xGak4yQ2ZuZUJKMHBHVytsaGhkd0pPNlBBWXFBCnZCc3VLK2ZUTjFQMlhNdkdDeGFQditMbnFOUCtUVFJlaXdjWlNPWTlybXZqS0U0aW9mRlBXOXU1cjA1L2xhd2cKVDVKTm1CVEpyOGxrd1J4UlNlRmFnNzA9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K \ No newline at end of file diff --git a/tests/oom-platform-cert-service/certservice/assets/valid_cr_changed_sans.csr b/tests/oom-platform-cert-service/certservice/assets/valid_cr_changed_sans.csr new file mode 100644 index 00000000..80b7440a --- /dev/null +++ b/tests/oom-platform-cert-service/certservice/assets/valid_cr_changed_sans.csr @@ -0,0 +1 @@ +LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0KTUlJREdqQ0NBZ0lDQVFBd2R6RUxNQWtHQTFVRUJoTUNWVk14RXpBUkJnTlZCQWdNQ2tOaGJHbG1iM0p1YVdFeApGakFVQmdOVkJBY01EVk5oYmkxR2NtRnVZMmx6WTI4eERUQUxCZ05WQkFzTUJFOU9RVkF4R1RBWEJnTlZCQW9NCkVFeHBiblY0TFVadmRXNWtZWFJwYjI0eEVUQVBCZ05WQkFNTUNHOXVZWEF1YjNKbk1JSUJJakFOQmdrcWhraUcKOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQXdqRWtvT2RhUitHK0ZNRkVLWndYenRyVHp5dWk3V2ZKQlg0SApsMkU3S3JoTUprQ2ZzWTMydFpzN2JXeHFDWjJJdXhVdDZtWVNqeUJKQU4xelRaWWgwcEl6Z21URkNtTjZ2TmpnCmpVb1ovNUk1QTU5WlVZdVROVnhud0ExOUFGN1RvNm84UUE2S0xQZm5XaHVWYU1kM0h0aWVyQkVLRWNYYzV1UnYKOEdXVUdRajhjSVYzM0NaZnBsaUVodjU0SkM4WGtFU3N5dFFmMWFoWHVrZUszblFobU5XSm9lYlcxR1F0WGxiSgpCbUNsYkNyWCtVeTMrbFpQNmg3Qk5FZlIxU1RSaXFTWVdGUU1nYktPMHFRZEN4SFJ1RkFoV0NGb1hsa0MrT1d4ClkvWkU2UHdsMTNCa205MFlld0JoL1NMTmlIQnFmYUJjNGx5SWZDOEkwRWRpZEdsMTZ3SURBUUFCb0Y0d1hBWUoKS29aSWh2Y05BUWtPTVU4d1RUQkxCZ05WSFJFRVJEQkNnaEZ1WlhjdGRHVnpkQzV2Ym1Gd0xtOXlaNElJYjI1aApjQzV2Y21lSEJIOEFBQUdHRG1aMGNEb3ZMM1JsYzNRdWIzSm5nUTEwWlhOMFFHOXVZWEF1YjNKbk1BMEdDU3FHClNJYjNEUUVCQ3dVQUE0SUJBUUFuK3VyTEp5bGhtVkxuUWx4TnBucUpUNm9KSHA5UWl3VmVPSElIOFRjbnluVnQKNExqUVFNWU9yR2FFNVVEZnlJVVhRdWtUb2RBWGlGeWVoWk1BdUF0Q2IyK3ljc0gzU3cyaVhmOWt5MEttS1FhMgpnTEw0Ymp2MG9rbFJLSzBHRldLMDFhZk82SUpNV3JlakV2U3hOUVpwWmU1TE1pSDFIWG1qeE9sdXZHTEZoUy96CmQwUm1sWHNXNEVQNWFuY2pNalpDRlJCZXhsaThpSmZlcEc2aDJSRVpRR1JRNGZqTDRhbXVvbnVKQ2dNRVR0L1cKKzJWNzhNNWNYWjVoa1NPejhOcWE0SURtNXJsTEhaTnlmM04rTGFWUVVOUnlNTlZKNzN3c1FxdytiS1RsanJWNAozL2pIekhYSmFCTjFNdHNBRnV2MFlJOHFOZ1QwRitWY0JxOUxCVlZaCi0tLS0tRU5EIENFUlRJRklDQVRFIFJFUVVFU1QtLS0tLQo= \ No newline at end of file diff --git a/tests/oom-platform-cert-service/certservice/assets/valid_cr_changed_sans.key b/tests/oom-platform-cert-service/certservice/assets/valid_cr_changed_sans.key new file mode 100644 index 00000000..2389f744 --- /dev/null +++ b/tests/oom-platform-cert-service/certservice/assets/valid_cr_changed_sans.key @@ -0,0 +1 @@ +LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRENNU1NnNTFwSDRiNFUKd1VRcG5CZk8ydFBQSzZMdFo4a0ZmZ2VYWVRzcXVFd21RSit4amZhMW16dHRiR29KbllpN0ZTM3FaaEtQSUVrQQozWE5ObGlIU2tqT0NaTVVLWTNxODJPQ05TaG4va2prRG4xbFJpNU0xWEdmQURYMEFYdE9qcWp4QURvb3M5K2RhCkc1Vm94M2NlMko2c0VRb1J4ZHptNUcvd1paUVpDUHh3aFhmY0psK21XSVNHL25na0x4ZVFSS3pLMUIvVnFGZTYKUjRyZWRDR1kxWW1oNXRiVVpDMWVWc2tHWUtWc0t0ZjVUTGY2VmsvcUhzRTBSOUhWSk5HS3BKaFlWQXlCc283UwpwQjBMRWRHNFVDRllJV2hlV1FMNDViRmo5a1RvL0NYWGNHU2IzUmg3QUdIOUlzMkljR3A5b0Z6aVhJaDhMd2pRClIySjBhWFhyQWdNQkFBRUNnZ0VBQXN3U2F2N3FIZjd5YmZvYXNUNitXUXh0NEo0UVNyc2oraUJHbTdlYTBwSzEKQmhnSU5OYUdwemNGTkI1THFMZk1NR1d0czZLa3djc0ZRaTN1YXordVhRb2VFOUsvdzlhSy9nMWhycWRTbUl2UwpwbXExTHFlRUIxQzliZGJENWkxM2Z2UUV5aWRyZGhwY0NzQTY5cmRvejlqdThDdU9xWkxnQzdOZXFXZk5LazhnCll1WGw5SlZVY0p6RGhhdlRCV2JrMWZFclAzZGkzVDFtVjRPSE9vS2N0Zy9PYWpMZlVpSUl5WDZpSHR3VGVXRTEKTDNWMnM2MTdXWURZczVIcWlER0psU0ppL1FtMTgvZnBKMmt4UTJRZG5YZTlmN2FMeVBtWmRPWU1CQTFMUmlhNwpkbmxwVlpvWXZXa1RUZFdHMDAza05PcHlDOVduUCtLRHdLN0krcTRYZ1FLQmdRRHdER21YUUdXK045UFdVazY1CjBJVW50Q0ZjS3FtcTREcFJPRUIwKzJIWEpZczNxNjdvUmp5eXNFL29QOVliK1l6QXIzMnoybytqWkxyeGhLaVgKQW43ck12UUpLaXJkbWN4QkZQMFBxQXlGNWl2aHJJNWkydjBtSm9DcXcra0pvdVg2cy9YNVZGc3pic0Fxa2xKdgpqbWJkbjRKbkc4T1BOa1dadnR3UW1GelNmUUtCZ1FEUEdLUlM2eUg2OEZ5Q0o5akdyQmY1WlZ0bUpmWEJ6azZ1ClpWRXdjKzJlNExXVXJCdFEvcG1ybnY5am4vcTNzbTdBVS9BT3FYMHN5OWhkckw0ZURCN28zMHFQVmh0YTdORmoKbnFTek1kVkxaRGI0T2FudjhyWlNZYmMzOUU1L3cxOStWamxpM25EOUM4SXhORm56Y2ovcmtHRis2NDkxbWdzbwp4dmZpMFhRdWh3S0JnUUNxY3JYYlR6K3ZWS2JYalBRWG5zZWR6SnJQZmYraHRMdlVCaFJHdkdUWnh1L1dwTko2ClhiMGx5R25FNk9jWVVCY3dqcXU4TkpvL2svdm1HS001THUxK0JsMGYwTkJGTDdySUQ2WXRJczlabUhsYU1oT2MKZ0JDMnNTbzFsd3gyNmpOUTA4MzVyM3RleHVvdWtGMTJsdS9WdURoNURFN005dVZ1NlFZTHhwUktaUUtCZ1FESwphUFZDcmRvYVg0NnJEN01LQ3UycnJlcjFIYWpqY1hicGNORTNvRGJoRUJPcGFjV1JGaWF2M01rVVlDbzJITW11ClpOdStHTjNsU0o4Q2YzR2FBSks5WEhDTlE4V2N5dFdrbmt1dmNNZGQxbWI3bWJDRWV4N0R5Z20vUUtMd3NNM0cKdHhPRGxKR3VZUzI5MWNNTTg5K1JweDREWk14a1R0a1ZVOUszOTZ1c1JRS0JnUUNPU2puU2FhcU1tU1hnM2lxQQp4WVIycnp4bnBOSFVyWVZYNG1rV2lOMyt4V1ZwN05wS2I5MGlmSmU4UXVQRXFRbkRuV1I4TC9pQjd2VWFpQ3BECmpWQjVleXpTMnh1MXhMK1BvbEo1ODJCTHNzS2VJMHpFZ2hBRWx2aXgvWk1CeHdNV0tRK0tVZVJ1bVFYNXZiR3QKOWRvRGxETVUxWGp6d0JMNHJSSmRKSUNFRlE9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg== \ No newline at end of file diff --git a/tests/oom-platform-cert-service/certservice/assets/valid_cr_changed_subject.csr b/tests/oom-platform-cert-service/certservice/assets/valid_cr_changed_subject.csr new file mode 100644 index 00000000..7e9ea510 --- /dev/null +++ b/tests/oom-platform-cert-service/certservice/assets/valid_cr_changed_subject.csr @@ -0,0 +1 @@ +LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0KTUlJREdqQ0NBZ0lDQVFBd2V6RUxNQWtHQTFVRUJoTUNWVk14RXpBUkJnTlZCQWdNQ2tOaGJHbG1iM0p1YVdFeApGakFVQmdOVkJBY01EVk5oYmkxR2NtRnVZMmx6WTI4eERUQUxCZ05WQkFzTUJFOU9RVkF4R1RBWEJnTlZCQW9NCkVFeHBiblY0TFVadmRXNWtZWFJwYjI0eEZUQVRCZ05WQkFNTURHNWxkeTF2Ym1Gd0xtOXlaekNDQVNJd0RRWUoKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBT0pSOGJTdjlQL1JONmZSbGYrWTR4YWxnd2Z1OEg1RQpMRmhzZmF3N3NYMEo2dDZIelFLa0YxQWFnVGlEODRpRHZua3J3ZUhjeUxsODdDN1d2NVVoaVZ6T0QvWEFqRmQ0Ci9jVVVaeXZPamZWNkxsWmdKTHMwT2JqK2JGNzdSbTdJWnZCeXpwRDJsLy9uOHNMWmxsTlBnY0Y2d1NnbHcwblgKZmxyYysxQUVaYVp6VHFvbStKMEsyZi9QQldQNVdsb29aUGRaOGR3cUI0TnczSmxkUzVwcEczRDVndUhDQmhDeQovRms1N0RVSnhxRDRSYVdKS3UwMnBQL2JqVXBYdjRuajQwNWUrVzZNSjd1blB4M1ZUYXcvUWQ0Mld4ODdJVG1LCjB5UmNVYW5qMGFrSWZSaUFid3VDZkJiWDlKazJjZU05d21qbm5mODlqNDkvNmpyd2lRMTh2bDBDQXdFQUFhQmEKTUZnR0NTcUdTSWIzRFFFSkRqRkxNRWt3UndZRFZSMFJCRUF3UG9JTmRHVnpkQzV2Ym1Gd0xtOXlaNElJYjI1aApjQzV2Y21lSEJIOEFBQUdHRG1aMGNEb3ZMM1JsYzNRdWIzSm5nUTEwWlhOMFFHOXVZWEF1YjNKbk1BMEdDU3FHClNJYjNEUUVCQ3dVQUE0SUJBUUJNRzBwM3lQWHRuRFVWckRreEtweG1MVWk3bWtoamdVLzRkdWFHaHBlSmdyTU4KNGNFVFVHWDdtdWw0aElDckovSGJPMGh5bzdaM2xEaXVCYVhCSmxpU0JXdU4zTmhoNDM5UzBDK1ZEZkVyNGxUZgo4bDlQYXdJRHFVNldhQSs2ejY5WHB4em94YndUK3R3b0ZBdTNtT2U1dVV2bWxNNk1Ma3Q2WE41RnhlUG9Ec21pCjcvRFZDZ3VBWDZNMi92UHpLWGZ2TWFMTzltS0dxNC9WcVpRZ3VHSFZNNUhrbkZQeVJiTUFyV2N3YXBDaWxGNG4KSENiOVdqb1BwZVhxVjFWeUJ2VFhBWTNoRFIwbXlNaFZ2b0QvU2g4UTNjWWttbU1vYlN4WExOZGxsWEt3MFhFagpwY1h6VWtINW5ub2cyQWI3UkVjRnNpQjZ4Qy81WnRpZm1OQWZyVEdYCi0tLS0tRU5EIENFUlRJRklDQVRFIFJFUVVFU1QtLS0tLQo= \ No newline at end of file diff --git a/tests/oom-platform-cert-service/certservice/assets/valid_cr_changed_subject.key b/tests/oom-platform-cert-service/certservice/assets/valid_cr_changed_subject.key new file mode 100644 index 00000000..0bbb2966 --- /dev/null +++ b/tests/oom-platform-cert-service/certservice/assets/valid_cr_changed_subject.key @@ -0,0 +1 @@ +LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRGlVZkcwci9ULzBUZW4KMFpYL21PTVdwWU1IN3ZCK1JDeFliSDJzTzdGOUNlcmVoODBDcEJkUUdvRTRnL09JZzc1NUs4SGgzTWk1Zk93dQoxcitWSVlsY3pnLzF3SXhYZVAzRkZHY3J6bzMxZWk1V1lDUzdORG00L214ZSswWnV5R2J3Y3M2UTlwZi81L0xDCjJaWlRUNEhCZXNFb0pjTkoxMzVhM1B0UUJHV21jMDZxSnZpZEN0bi96d1ZqK1ZwYUtHVDNXZkhjS2dlRGNOeVoKWFV1YWFSdHcrWUxod2dZUXN2eFpPZXcxQ2NhZytFV2xpU3J0TnFULzI0MUtWNytKNCtOT1h2bHVqQ2U3cHo4ZAoxVTJzUDBIZU5sc2ZPeUU1aXRNa1hGR3A0OUdwQ0gwWWdHOExnbndXMS9TWk5uSGpQY0pvNTUzL1BZK1BmK282CjhJa05mTDVkQWdNQkFBRUNnZ0VCQUxFVVNMaUZ6SDYwNW9VcVdlRUpjUFZ4UDFyZnU5QXY2enFzZUpCZ2pIazMKWDB3S21YL3RnRWd1MU5peGRjVmt2NDN6ak5uNmRCdWVBUGFORkkzTkZidEZoL3RUVXZ2R01Wa1lvN2tFL3RJSgpiV1FzQ2RGb0Jab1hpQmV4SitUYWJLREtVNUhkUUFUOUtWY0lCTFRleXJubUlHZ1hVL3ZjM29LZDBRMUV3M3c5CjF2ZEo2dEhoS0xwRk54dk51M3FoV1QvT0gvVmdkY3RUVzltazgraWNtNVNJRlVxcWlVMlFTc1pYY0hpUzRnS0MKZFBUb1hEbThTVkk1QTI5VlRuUkJIYkt0WEVaSjQwQWFPczVVSWRDUnA2L1Z6WlhtSlQyNUsvNTRad3F3OEZuTAp5SUFEM1dTcTRWSktKQUQ3ZkpkMjcrditxNXJSVnl3dEt1dFBCK2JNU3dFQ2dZRUEvL0t6R1BJMEsvK0h0OWRFCkwwQXVFK0lyY3A2R0lwTXVDZGRKbms1bVdJMm13c3QyeXZOUllyanM3M3UxckZ4QkZHZnNCK2c0NW9Qa2g3YmYKTDRubjI0TlBkZEwxdlM4YW9EME5HUmJQT2JpU2tvYUxwRTBQNjdOeGNHSk1IL2N2ckFrcFhrWGtaaXFHNXZ0NApKUXlvb1k2eUhxMHNpRW1aSHlRRXA1ZklUR0VDZ1lFQTRsMjBkdnBUM2E1cDNRYWwwTG96RjBGTUxFb21LUFM2CmZDOWJPdXhmdC8wbjA1MFVVeUN3TUUydmZqb0JkekNkSjVrNlNCOWJ3L3U2aHBGY1J0TFliTWZId2piUi9OMjgKKzM2Qno5cUxoTWViQjZIRFZRRldGT0kyZ2RsOWlldndFZG9yVmNpOXpDRXk0TEJqTTNqYmtHaGpzR0RlaG9CcgpzZ1B1T3lkc1UzMENnWUVBckRaZ3l5Z3NjbTQ4b3pYMGF0YUVLbHpEWHh2S3BQaml3VHhhREdvejh1RmNrelRUCmVUcStSKzZsZlgxL2Y3bVRFR2ZjS0hYWDAwSnJRZVdKeGpMRURxOExoL3VwM09FVXlUeEswOWJGRjlGWXpiNDUKdHhNaTR6U1ozMFJFZEQyZGxlT1VNaHBVMDJsSjI2RFg5aFhPWU9YaWMwR1I5U0dRSmFQV2ZlMWltQUVDZ1lBTwoyaThaRDF1cFUrUkdTRVZnNkphcGsvTTNoTFgwUWZwcVk0RU00SzEzR1BrZi9WSjBFZFQ5bGx0SllPenZzUlRlCm9FTWVzRkFKRDk4eExTQnMxVEMyRW5XYzNKUHlqMm55NWw0R0VVVE9OWHFLaWFhVFVUOGdwNmNENWcxQ20yUnAKQjNPSWNWOWlvVnNCT3hHSE13clU4c1Izc2lObmw4MTVKS0RnNkxsRzBRS0JnUUNLbm8xOVpyVkc4U21VZzl1ZgpqRWowN21yUXZMNUFiSEJaVXBVVVZESkMvTGdoY25rbDQvNkZGbG83aDdxQ05hN1JHMUwrdWFrVENiaW95bDVFCmZtSWptVEpaVE9ZYTI4M2hYMk1BaXZFbkNVVUd2bVpjK0t1a1lrNS9YK0NCb0ZBWUx0VTdFUit4SExnZ0VIVFAKSEdUVWkvanhDQTNPU3g5c1VqSHQ1WUVqNHc9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg== \ No newline at end of file diff --git a/tests/oom-platform-cert-service/certservice/assets/valid_ir_for_update.csr b/tests/oom-platform-cert-service/certservice/assets/valid_ir_for_update.csr new file mode 100644 index 00000000..7a07d6c3 --- /dev/null +++ b/tests/oom-platform-cert-service/certservice/assets/valid_ir_for_update.csr @@ -0,0 +1 @@ +LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0KTUlJREZqQ0NBZjRDQVFBd2R6RUxNQWtHQTFVRUJoTUNWVk14RXpBUkJnTlZCQWdNQ2tOaGJHbG1iM0p1YVdFeApGakFVQmdOVkJBY01EVk5oYmkxR2NtRnVZMmx6WTI4eERUQUxCZ05WQkFzTUJFOU9RVkF4R1RBWEJnTlZCQW9NCkVFeHBiblY0TFVadmRXNWtZWFJwYjI0eEVUQVBCZ05WQkFNTUNHOXVZWEF1YjNKbk1JSUJJakFOQmdrcWhraUcKOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQXZPKzFuNEpuSzRIRFpmTDBqaFBvOGlYRFpobEtkalFCOVBWTQprZXp1cXpheTJja2NGY2t2aExxc3hRL1JHeHJLaHlZNkRGR2Y1WHVWNkVGYUY3NXF1RlliRlF1REhyV3p0YTFyCmIxQ3pRMFgydDJOOTlFRWVzcGVUUEkzU3dHRHkrb2xveHlvM3E3MXFsdXBRaEtjY2FpZUZRVlFvdzAzZkd5clcKbFJYSENNcjNCZEh2eEtiWFBUSXQ0OFl4ck1CK0FqUUxaUUVyYXlFTitybWlFZlFKUTFvam4rL25hdTZsL1VSVgppcFBVdHJiZVJuZWZRQlpKRzcwVmx0dGtxNUsvQm13Z1djMUtSOC90QnRmVjBFL1hKb2F6Uy9lamo0TCtDWlkrCkhiQTU3YXNmc2VpQ2djL1lBZ2JJRGhLNDg1K3lwbW1mYUpFWEluUDJnSHJkSURCVHh3SURBUUFCb0Zvd1dBWUoKS29aSWh2Y05BUWtPTVVzd1NUQkhCZ05WSFJFRVFEQStnZzEwWlhOMExtOXVZWEF1YjNKbmdnaHZibUZ3TG05eQpaNGNFZndBQUFZWU9ablJ3T2k4dmRHVnpkQzV2Y21lQkRYUmxjM1JBYjI1aGNDNXZjbWN3RFFZSktvWklodmNOCkFRRUxCUUFEZ2dFQkFMemxBby9Tczh1ZHpYVWIxdHl1d1BISU03c3dzS3c3WGZHK25mdXpuQ1UrbUZzS01oNlcKWmFXQWtSZ3VUY2d3T2JaNXcwNS9rcjBpZDFrdjJ0WU9xYXViMWZXVisrVmRVSXNZcUoxTENwL3RHU241Rkt6SQpvMVdpcEFOTGJpTEU0MnVPWHA2aHlmeUZsdzhQa2RwdURrUUVrNFV6MGdWK2dVRGZBd0JsOEx3aHdiREY3a3lhCkFiekZrRE5sem9ZemZLRTR4enN5SDNtQlYwdVpGS1lodE9XLzBQYVRnY042NTd6eXRCUGMxMExJaXVDa0NvU2IKYXNueG5FTUJTVU1nbC9YYzM4TFB5WU5BZGNCQTJHS3daeXNBd0J6V3lrNlM1U2x1SG9xcjlJWmdDcldWTlU5YwpGU1VWL29jQWY5Y29CRkRDVXVTWFBxWlpacUxlRnlhclZRRT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUgUkVRVUVTVC0tLS0tCg== \ No newline at end of file diff --git a/tests/oom-platform-cert-service/certservice/assets/valid_ir_for_update.key b/tests/oom-platform-cert-service/certservice/assets/valid_ir_for_update.key new file mode 100644 index 00000000..6405104c --- /dev/null +++ b/tests/oom-platform-cert-service/certservice/assets/valid_ir_for_update.key @@ -0,0 +1 @@ +LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2Z0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktnd2dnU2tBZ0VBQW9JQkFRQzg3N1dmZ21jcmdjTmwKOHZTT0UranlKY05tR1VwMk5BSDA5VXlSN082ck5yTFp5UndWeVMrRXVxekZEOUViR3NxSEpqb01VWi9sZTVYbwpRVm9Ydm1xNFZoc1ZDNE1ldGJPMXJXdHZVTE5EUmZhM1kzMzBRUjZ5bDVNOGpkTEFZUEw2aVdqSEtqZXJ2V3FXCjZsQ0VweHhxSjRWQlZDakRUZDhiS3RhVkZjY0l5dmNGMGUvRXB0YzlNaTNqeGpHc3dINENOQXRsQVN0cklRMzYKdWFJUjlBbERXaU9mNytkcTdxWDlSRldLazlTMnR0NUdkNTlBRmtrYnZSV1cyMlNya3I4R2JDQlp6VXBIeiswRwoxOVhRVDljbWhyTkw5Nk9QZ3Y0SmxqNGRzRG50cXgreDZJS0J6OWdDQnNnT0VyanpuN0ttYVo5b2tSY2ljL2FBCmV0MGdNRlBIQWdNQkFBRUNnZ0VCQUx4aFJYWUZUMWpSeVVHZFBMbHNvSmJQa0VQOGM0SG4yUXVraVBQMmlRR3QKU0NaZG51TVo5WWNobWFIaVkxdmpHb3dtVVRwM0tEWm5RdENRV0lQVUdCUXp4a3oxYllieEpIM0FxNTRSbUtzNgoxd09DNzlMYUd3RjJvQmVBVU9IL3lFU0ZQVE5YcEtwWDhpOEc4Y0ZSM2NMNkpLTStobVkwL243WDk1d3VXb1VvCkloWW16Q0J2MmVWSG0veEtLZ01Lai82RWJkdE5uWlRack4rK3ZObmdqZndyTzEzQzR5STYxbzl5dDRzOGpMSHcKMnV4bUcwZ3RBZ0ZCZ0d6UWNFUG5tdEZDWkxYZkhiRVAreklwZ0U0eDZRakYzN05jYThHVmNINEVhOTViWG1LRgplWERlOElvWFJFOU9TZ25SR2hzeTVMUHNlTGYrZG1aVkx1WDNTK2c3WGdFQ2dZRUE2emZMd0U4akRyZUdhM2ExCkV4V2ZZOWZWeDMzWlREdytyYWxZVXBpUTAwWUlWYmRiVlZBZlpxRW1STzVYY2dKOXN1NDZtM3lDc2pZM1M1QnYKZ1daaGtHVmtSSnpoREdYRnpFdmdLcHRZZERNUDZQTzkyOVAyWmxacytnRVhVQlpnRkJ1SW9maWNqSHBuL0VHeAp0VTdGeW5VS1JqbDlDUitqVkN5d28yeGpLVzBDZ1lFQXphRWJuVUNnSTNTOWpvSTYxNVNxcmxCbVhacXpEckFMCi9jNFRPRTltVUhSeDduZ0I0ektERFd4Zys4NnVJQlBEUmc4RkVpQVFxb1g2bi9pUW9iKzFNdXRpYWE4ZUQ2ODIKVmFCL0hsT2NKMHdLVUlPZU0rNnh3WDhOUlRxb09KUjFEeUt3dThTWUNLN3BxcHRoSDgycmhZQ0pqRERlTnp6dwpwUnE1T3hWUEJZTUNnWUI1KzNhVDViWjFsR0dHYTRwZU9sRnRrdW9QeWNrZUN3UXFSVzlEYmxGMDc1VzA5aURNCmJuL0tWbm9sTjBGc0k3U1NUWTloUVVINkw3bWZXMmtvUHpNTGtqbGNoOHNDQmVsOUdFQkplRVI0Qmw4UzNReXgKNnd1V2FPMmMvV0hjcTYzcDM1bU0vZ1FacWdVeFFkUnFCVTczdnBpMGNHM1NoSERNWDF5L2M1ODlSUUtCZ1FDbwpGT0wvblUzSTdhbnNqU01RQ09PamJQRGYzbzR5bVZDVC9CalYxSUVyanFONmEvb08vc0VFL2V3Z3FJYklqWjcyCjYxd1h2c0lnd1RkbC84WXBrUXpLUElITEpXdUxJb3RsWHJYSjBrbzREUDM1Wmp5dzhwRzJPdVpjQ21CckwxNm8KS3BFUVN0aURjSVpzQUdwWmxzSjNjK1A3Qmc3K1UvL1kxWWxIZEZtTmhRS0JnQkRCbkVrQzlRdmZ0RGZaM0lxYwpvcUJNTElMSHJyV2NpRTM4K1JzV3RJSkk2WHhXbEVCV3ppRElBMHk3WXgrUENtYk9ybitlM2Zvd0VZU2E0eXA1ClgzMER3SFB5U1Z2WVAzNUY4NCtnd2FZalVaYW9uT2FBVnRpVXgzdDA3blRMaEEyNnJ0bWZWbDJvbEFTeWNOZWQKTXpZbFBiNUZEQThhRDB2blFteFI3Q2l4Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K \ No newline at end of file diff --git a/tests/oom-platform-cert-service/certservice/assets/valid_kur.csr b/tests/oom-platform-cert-service/certservice/assets/valid_kur.csr new file mode 100644 index 00000000..3f898f58 --- /dev/null +++ b/tests/oom-platform-cert-service/certservice/assets/valid_kur.csr @@ -0,0 +1 @@ +LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0KTUlJREZqQ0NBZjRDQVFBd2R6RUxNQWtHQTFVRUJoTUNWVk14RXpBUkJnTlZCQWdNQ2tOaGJHbG1iM0p1YVdFeApGakFVQmdOVkJBY01EVk5oYmkxR2NtRnVZMmx6WTI4eERUQUxCZ05WQkFzTUJFOU9RVkF4R1RBWEJnTlZCQW9NCkVFeHBiblY0TFVadmRXNWtZWFJwYjI0eEVUQVBCZ05WQkFNTUNHOXVZWEF1YjNKbk1JSUJJakFOQmdrcWhraUcKOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQTNpQjc1UExEM2hGWHRLMHNnWmhwLzcxWHExTFBUNWhLcVpkQwo4Sjl1Nkwxeitqb21mczJMN1FDQ2RDL21ic0p6djhZSWtZZGc1L05VVVN4dkxNU1pWN0kyQmRhRERzYUJOV3oxClVuVEQ5TU9mdG8wQTdtK1JZK2FIQnY3cFhYNlVUVkVqdm94MExId3dOanlCdUc3VytKRnR2dFFtR21wdDVUdWYKcHJWUm5jZ2duZlBkZXU1WDVsUTU3aUREYjRZL3VRSWZPRTdvc2MzTmJvN2ZpQ3NmR2VpWllFejB0bE05ZVlaRwpUOXI2WUlTOURqRDBYbDE3TXNCZjR6N1VNTWVOeXc1WTBMK3I3MTlVVDVic2lvaWJQbFdSeTFaZDdGL0UvZ3E5Ci9Yc3ZFMzVqZ0FZWG5STWRjek12TnozdkFWMzgzaWdHeGRMV2ltNnE0bDVKMklXNVpRSURBUUFCb0Zvd1dBWUoKS29aSWh2Y05BUWtPTVVzd1NUQkhCZ05WSFJFRVFEQStnZzEwWlhOMExtOXVZWEF1YjNKbmdnaHZibUZ3TG05eQpaNGNFZndBQUFZWU9ablJ3T2k4dmRHVnpkQzV2Y21lQkRYUmxjM1JBYjI1aGNDNXZjbWN3RFFZSktvWklodmNOCkFRRUxCUUFEZ2dFQkFFUDB4UVdsNDduNEowNnUxSjJsTTI4aWhNcy9GaHJNaG5DeTlETFpoYU9uQ3BjSktPNkoKMUhHQU54OEFJRDI5dk93Q09xaVJ5OFZBNHU0aW9LdjdaaS9HT3NhaWh0RWEvQjY4dnBTR1p3RVlmeFJtMXdvYgpWWlRuR0pSbDdKVmg3OVc5SlFjeVcwbEFIRzFPdXdtQUZjc0NMUFlXRDRKVXMrUmptS0R4T2V6R3VpMTcxaUhWCnFHbkNIZGdSUDFFUE9IdnFsYWY2MnlnQ2RaWVoyZGlLK0s1VmJ3OE1XUmF2VGt3cFhEWjNGZGlwYUtQNmJZN3cKR0ROWUZNQ2FySHBsUy9DS2dPZENhdkh4UExTeGFTcis2dE5xV1pQbTBpUk1BdTZ3RThWRTNsMXZFRldUNlg4Rgo0WDNyaGFvQVduK3RabjZCanJtbnoveFlaTlhuck1CM0lLMD0KLS0tLS1FTkQgQ0VSVElGSUNBVEUgUkVRVUVTVC0tLS0tCg== \ No newline at end of file diff --git a/tests/oom-platform-cert-service/certservice/assets/valid_kur.key b/tests/oom-platform-cert-service/certservice/assets/valid_kur.key new file mode 100644 index 00000000..07770d90 --- /dev/null +++ b/tests/oom-platform-cert-service/certservice/assets/valid_kur.key @@ -0,0 +1 @@ +LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRGVJSHZrOHNQZUVWZTAKclN5Qm1Hbi92VmVyVXM5UG1FcXBsMEx3bjI3b3ZYUDZPaVorell2dEFJSjBMK1p1d25PL3hnaVJoMkRuODFSUgpMRzhzeEpsWHNqWUYxb01PeG9FMWJQVlNkTVAwdzUrMmpRRHViNUZqNW9jRy91bGRmcFJOVVNPK2pIUXNmREEyClBJRzRidGI0a1cyKzFDWWFhbTNsTzUrbXRWR2R5Q0NkODkxNjdsZm1WRG51SU1OdmhqKzVBaDg0VHVpeHpjMXUKanQrSUt4OFo2SmxnVFBTMlV6MTVoa1pQMnZwZ2hMME9NUFJlWFhzeXdGL2pQdFF3eDQzTERsalF2NnZ2WDFSUApsdXlLaUpzK1ZaSExWbDNzWDhUK0NyMzlleThUZm1PQUJoZWRFeDF6TXk4M1BlOEJYZnplS0FiRjB0YUticXJpClhrblloYmxsQWdNQkFBRUNnZ0VCQU5WTU5DeUJ3ZnY0ZzFRSUJ2amJOczVSTDJKZ3Zwb2NEM1lTdmtENW1ETDkKMmVTcStsUkJaT0JNNFBoWkZ0bTgrQkZyUk1jYVRML3ZOVVJOZXVSdVZTR1ZDN05IYmNvK2E4eTF1RTFadXVITApDQTd3RDdqbWdhS0F0NkRNSDZPYjdTVGhpWVZzc2hJVm51WTE3QXNDeElNa2cxSC92aWNYbERmUHJWc1VPaTliCk41RzRVM041VGRLaDJOcDhQZXNPU0hUZXphamNtNmJXUy9xU3pkZTgzQjNDNE9ZcUFJdjlIVEpLZWpMY0p3WnAKbDlnMlBVTGlKR3I2S0J2aWZwM1lqSm5pQ3ZmbVdIMW5tbEdjaThTU09MeVNUM21MUm84QnhlQUFEenpsUmYvSgpDOHBVZ1ZsbDhUUDh2a1BJNXpsWVhYZExWVDBVVUM5SjRWZUE1cXZMZTNFQ2dZRUE4ZFRvTUMvaHgzR05qeWo2CkFWczNRN2FGUUlZd3FYNEZMbklPejhHKzVpdUZxY01wWWdyVjVwOWhHUm5ud0lIc0M1WE9yTU9ZL0dGdjJUN0oKZXdWZTJ1Z3lqcUF1djgrZTl4Q2JtdmVtcHhtNitkdnZTQjR3WmU1a1haQzM4UHlRUUtHcnB4aStnbUZkYlN0Rgp3a0U3YXFHNmlZUlptZm9jVlZSMjBMSmQ0VU1DZ1lFQTZ5UUpWRDFwRkRUK05ESzRMTmIyeTNGUThWZ2t4UW15CmsvTmdlaFU3SmVZc1pqWjRWaW9LOWp2MGFLbFdsckFyMkFLYUlrWHArTGdxSVB4aEVGWTVCNDJtYW15QlROT20KS3c5SE9FQXV2LzlsRDFvL0kxM1lWTkd5UWdyQjFOZEwwQ20wbmg1SFFLUVRXbFJ5TzBuQzVrTjhmVTJLYmpHTQpQZlI0aG14OUhEY0NnWUVBNVhLeGZvN2Z0S0VMdytvSUV1TmQ4eFFwS0FocUFWYTlTYzBVT3BERU5KVFV0RGFrCmZBNTExdVFmZDNaNXlkQTdpdDV2Z3NIdTFIOEtaV0JLUUR2ZlBPb1VsZmhyZ3JoV1JtcHVpVUV4ME5mNzdIZDkKZDdxVkJ4R0NEcmh4bmVlMFltNUNkRDlvK2tHeEtCUm5rcURiNUJkZzZuczFuSCtQQkhNb2JHamY1QXNDZ1lBZwoyNnBLRVVMTHhoUDNxMWE5UFZURFhSUlloVjZ1QWdyb1Rjd2ZnelArdWNsZWh5SU51RlpMemxqNi94N1FjOUhNCm42QjJSWnJLWE1IV1ZpNGlJRXBiMmRsMWFiQXYwaXVZUE14UStmY09jVnZuNTA2SFhLZk1RbmxNYlVCa3c2a2UKYjVXRHV1dHVCditGVWVPY2tWUWc1VEZTT1RHczhGT09uTWp5ejlvenhRS0JnUUNLcEtqOUxLRlR4bFJoUFduaApITkJ3QWJsMzI2NjhmSW1ORG1yQlkxWHdvczVQdnV2Mjcxckc2STJLUnJDbGdmb3NtdnlJVVY0NjBNZmZNanJrCmJlbFdDdFNyRU4wYlZtK2xQOGkwWGg3REMrRkxmbG1GdTVFclNDUkRjcTY0SzIxWHpSczVzOUVYVnpBekVGaE4KdWpPTExUSDIySUwrclpuZXlWbjUxdW1DQkE9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg== \ No newline at end of file diff --git a/tests/oom-platform-cert-service/certservice/cert-service-test.robot b/tests/oom-platform-cert-service/certservice/cert-service-test.robot index 3cc2fce8..c8ecb3ab 100644 --- a/tests/oom-platform-cert-service/certservice/cert-service-test.robot +++ b/tests/oom-platform-cert-service/certservice/cert-service-test.robot @@ -23,78 +23,150 @@ Check if application is ready [Documentation] Send request to /ready endpoint and expect 200 Send Get Request And Validate Response /ready 200 -Generate Certificate In RA Mode For CA Name - [Tags] OOM-CERT-SERVICE +Generate Certificate In RA Endpoint For CA Name + [Tags] OOM-CERT-SERVICE CERTIFICATE-INITIALIZATION [Documentation] Send request to ${CERT_SERVICE_ENDPOINT}${RA_CA_NAME} endpoint and expect 200 Send Get Request with Header And Expect Success ${CERT_SERVICE_ENDPOINT}${RA_CA_NAME} ${VALID_RA_CSR_FILE} ${VALID_RA_PK_FILE} -Generate Certificate with all Sans types In RA Mode For CA Name - [Tags] OOM-CERT-SERVICE +Generate Certificate with all Sans types In RA Endpoint For CA Name + [Tags] OOM-CERT-SERVICE CERTIFICATE-INITIALIZATION [Documentation] Send request to ${CERT_SERVICE_ENDPOINT}${RA_CA_NAME} endpoint and expect 200 Send Get Request with Header And Expect Success ${CERT_SERVICE_ENDPOINT}${RA_CA_NAME} ${VALID_RA_ALL_SANS_CSR_FILE} ${VALID_RA_ALL_SANS_PK_FILE} Report Not Found Error When Path To Service Is Not Valid - [Tags] OOM-CERT-SERVICE + [Tags] OOM-CERT-SERVICE CERTIFICATE-INITIALIZATION [Documentation] Send request to ${CERT_SERVICE_ENDPOINT} endpoint and expect 404 Send Get Request with Header And Expect Error ${CERT_SERVICE_ENDPOINT} ${VALID_CLIENT_CSR_FILE} ${VALID_CLIENT_PK_FILE} 404 Report Bad Request Error When Header Is Missing In Request - [Tags] OOM-CERT-SERVICE + [Tags] OOM-CERT-SERVICE CERTIFICATE-INITIALIZATION [Documentation] Send request without header to ${CERT_SERVICE_ENDPOINT}${CLIENT_CA_NAME} endpoint and expect 400 Send Get Request And Validate Response ${CERT_SERVICE_ENDPOINT}${CLIENT_CA_NAME} 400 Report Bad Request Error When CSR Is Not Valid - [Tags] OOM-CERT-SERVICE + [Tags] OOM-CERT-SERVICE CERTIFICATE-INITIALIZATION [Documentation] Send request to ${CERT_SERVICE_ENDPOINT}${CLIENT_CA_NAME} endpoint and expect 400 Send Get Request with Header And Expect Error ${CERT_SERVICE_ENDPOINT}${CLIENT_CA_NAME} ${INVALID_CSR_FILE} ${VALID_CLIENT_PK_FILE} 400 Report Bad Request Error When PK Is Not Valid - [Tags] OOM-CERT-SERVICE + [Tags] OOM-CERT-SERVICE CERTIFICATE-INITIALIZATION [Documentation] Send request to ${CERT_SERVICE_ENDPOINT}${CLIENT_CA_NAME} endpoint and expect 400 Send Get Request with Header And Expect Error ${CERT_SERVICE_ENDPOINT}${CLIENT_CA_NAME} ${VALID_CLIENT_CSR_FILE} ${INVALID_PK_FILE} 400 +Update Certificate With Key Update Request In RA Endpoint Should Succeed + [Tags] OOM-CERT-SERVICE CERTIFICATE-UPDATE + [Documentation] Send Initialization Request to ${CERT_SERVICE_ENDPOINT}${RA_CA_NAME} then for received certificate send Key Update Request to ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} endpoint and expect 200 + Send Initialization Request And Key Update Request And Expect Success ${CERT_SERVICE_ENDPOINT}${RA_CA_NAME} ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} + ... ${VALID_IR_CSR_FOR_UPDATE} ${VALID_IR_KEY_FOR_UPDATE} ${VALID_KUR_CSR} ${VALID_KUR_KEY} + +Update Certificate With Certification Request When Subject Changed In RA Endpoint Should Succeed + [Tags] OOM-CERT-SERVICE CERTIFICATE-UPDATE + [Documentation] Send Initialization Request to ${CERT_SERVICE_ENDPOINT}${RA_CA_NAME} then for received certificate send Key Update Request to ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} endpoint and expect 200 + Send Initialization Request And Certification Request And Expect Success ${CERT_SERVICE_ENDPOINT}${RA_CA_NAME} ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} + ... ${VALID_IR_CSR_FOR_UPDATE} ${VALID_IR_KEY_FOR_UPDATE} ${VALID_CR_CSR_CHANGED_SUBJECT} ${VALID_CR_KEY_CHANGED_SUBJECT} + +Update Certificate With Certification Request When Sans Changed In RA Endpoint Should Succeed + [Tags] OOM-CERT-SERVICE CERTIFICATE-UPDATE + [Documentation] Send Initialization Request to ${CERT_SERVICE_ENDPOINT}${RA_CA_NAME} then for received certificate send Key Update Request to ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} endpoint and expect 200 + Send Initialization Request And Certification Request And Expect Success ${CERT_SERVICE_ENDPOINT}${RA_CA_NAME} ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} + ... ${VALID_IR_CSR_FOR_UPDATE} ${VALID_IR_KEY_FOR_UPDATE} ${VALID_CR_CSR_CHANGED_SANS} ${VALID_CR_KEY_CHANGED_SANS} + +Update Certificate With Key Update Request In RA Endpoint Should Fail When Wrong Old Private Key Is Used + [Tags] OOM-CERT-SERVICE CERTIFICATE-UPDATE + [Documentation] Send Initialization Request to ${CERT_SERVICE_ENDPOINT}${RA_CA_NAME} then for received certificate send Key Update Request to ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} endpoint and expect 500 + Send Initialization Request And Key Update Request With Wrong Old Private Key And Expect Error ${CERT_SERVICE_ENDPOINT}${RA_CA_NAME} ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} + ... ${VALID_IR_CSR_FOR_UPDATE} ${VALID_IR_KEY_FOR_UPDATE} ${VALID_KUR_CSR} ${VALID_KUR_KEY} ${INVALID_IR_KEY_FOR_UPDATE} + +Update Certificate In RA Endpoint Should Fail When OLD_CERT Header Is Incorrect + [Tags] OOM-CERT-SERVICE CERTIFICATE-UPDATE + [Documentation] Send Update Request to ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} endpoint with wrong OLD_CERT header and expect 400 + Send Update Request With Wrong Header And Expect Error ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} + ... ${VALID_KUR_CSR} ${VALID_KUR_KEY} ${INVALID_OLD_CERT_BASE64} ${VALID_IR_KEY_FOR_UPDATE} + +Update Certificate In RA Endpoint Should Fail When OLD_CERT Header Is Missing + [Tags] OOM-CERT-SERVICE CERTIFICATE-UPDATE + [Documentation] Send Update Request to ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} endpoint with missing OLD_CERT header and expect 400 + Send Update Request With Missing Header And Expect Error ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} + ... ${VALID_KUR_CSR} ${VALID_KUR_KEY} ${VALID_OLD_CERT_BASE64} ${VALID_IR_KEY_FOR_UPDATE} OLD_CERT + +Update Certificate In RA Endpoint Should Fail When OLD_PK Header Is Incorrect + [Tags] OOM-CERT-SERVICE CERTIFICATE-UPDATE + [Documentation] Send Update Request to ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} endpoint with wrong OLD_PK header and expect 400 + Send Update Request With Wrong Header And Expect Error ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} + ... ${VALID_KUR_CSR} ${VALID_KUR_KEY} ${VALID_OLD_CERT_BASE64} ${INVALID_PK_FILE} + +Update Certificate In RA Endpoint Should Fail When OLD_PK Header Is Missing + [Tags] OOM-CERT-SERVICE CERTIFICATE-UPDATE + [Documentation] Send Update Request to ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} endpoint with missing OLD_PK header and expect 400 + Send Update Request With Missing Header And Expect Error ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} + ... ${VALID_KUR_CSR} ${VALID_KUR_KEY} ${VALID_OLD_CERT_BASE64} ${VALID_IR_KEY_FOR_UPDATE} OLD_PK + +Update Certificate In RA Endpoint Should Fail When CSR Header Is Incorrect + [Tags] OOM-CERT-SERVICE CERTIFICATE-UPDATE + [Documentation] Send Update Request to ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} endpoint with wrong CSR header and expect 400 + Send Update Request With Wrong Header And Expect Error ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} + ... ${INVALID_CSR_FILE} ${VALID_KUR_KEY} ${VALID_OLD_CERT_BASE64} ${VALID_IR_KEY_FOR_UPDATE} + +Update Certificate In RA Endpoint Should Fail When CSR Header Is Missing + [Tags] OOM-CERT-SERVICE CERTIFICATE-UPDATE + [Documentation] Send Update Request to ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} endpoint with missing CSR header and expect 400 + Send Update Request With Missing Header And Expect Error ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} + ... ${VALID_KUR_CSR} ${VALID_KUR_KEY} ${VALID_OLD_CERT_BASE64} ${VALID_IR_KEY_FOR_UPDATE} CSR + +Update Certificate In RA Endpoint Should Fail When PK Header Is Incorrect + [Tags] OOM-CERT-SERVICE CERTIFICATE-UPDATE + [Documentation] Send Update Request to ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} endpoint with wrong PK header and expect 400 + Send Update Request With Wrong Header And Expect Error ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} + ... ${VALID_KUR_CSR} ${INVALID_PK_FILE} ${VALID_OLD_CERT_BASE64} ${VALID_IR_KEY_FOR_UPDATE} + +Update Certificate In RA Endpoint Should Fail When PK Header Is Missing + [Tags] OOM-CERT-SERVICE CERTIFICATE-UPDATE + [Documentation] Send Update Request to ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} endpoint with missing PK header and expect 400 + Send Update Request With Missing Header And Expect Error ${CERT_SERVICE_UPDATE_ENDPOINT}${RA_CA_NAME} + ... ${VALID_KUR_CSR} ${VALID_KUR_KEY} ${VALID_OLD_CERT_BASE64} ${VALID_IR_KEY_FOR_UPDATE} PK + Cert Service Client successfully creates keystore.p12 and truststore.p12 - [Tags] OOM-CERT-SERVICE + [Tags] OOM-CERT-SERVICE OOM-CERT-SERVICE-CLIENT [Documentation] Run with correct env and expected exit code 0 Run Cert Service Client And Validate PKCS12 File Creation And Client Exit Code ${VALID_ENV_FILE} 0 Cert Service Client successfully creates keystore.jks and truststore.jks - [Tags] OOM-CERT-SERVICE + [Tags] OOM-CERT-SERVICE OOM-CERT-SERVICE-CLIENT [Documentation] Run with correct env and expected exit code 0 Run Cert Service Client And Validate JKS File Creation And Client Exit Code ${VALID_ENV_FILE_JKS} 0 Cert Service Client successfully creates keystore and truststore with expected data with no OUTPUT_TYPE - [Tags] OOM-CERT-SERVICE + [Tags] OOM-CERT-SERVICE OOM-CERT-SERVICE-CLIENT [Documentation] Run with correct env and PKCS12 files created with correct data Run Cert Service Client And Validate PKCS12 Files Contain Expected Data ${VALID_ENV_FILE} 0 Cert Service Client successfully creates keystore and truststore with all SANs types provided - [Tags] OOM-CERT-SERVICE + [Tags] OOM-CERT-SERVICE OOM-CERT-SERVICE-CLIENT [Documentation] Run with correct env and expected exit code 0 Run Cert Service Client And Validate PKCS12 Files Contain Expected Data ${VALID_ENV_FILE_ALL_SANS_TYPES} 0 Cert Service Client successfully creates keystore and truststore with expected data with OUTPUT_TYPE=JKS - [Tags] OOM-CERT-SERVICE + [Tags] OOM-CERT-SERVICE OOM-CERT-SERVICE-CLIENT [Documentation] Run with correct env and JKS files created with correct data Run Cert Service Client And Validate JKS Files Contain Expected Data ${VALID_ENV_FILE_JKS} 0 Cert Service Client successfully creates keystore and truststore with expected data with OUTPUT_TYPE=P12 - [Tags] OOM-CERT-SERVICE + [Tags] OOM-CERT-SERVICE OOM-CERT-SERVICE-CLIENT [Documentation] Run with correct env and PKCS12 files created with correct data Run Cert Service Client And Validate PKCS12 Files Contain Expected Data ${VALID_ENV_FILE_P12} 0 Cert Service Client successfully creates keystore and truststore with expected data with OUTPUT_TYPE=PEM - [Tags] OOM-CERT-SERVICE + [Tags] OOM-CERT-SERVICE OOM-CERT-SERVICE-CLIENT [Documentation] Run with correct env and PEM files created with correct data Run Cert Service Client And Validate PEM Files Contain Expected Data ${VALID_ENV_FILE_PEM} 0 Cert Service Client reports error when OUTPUT_TYPE is invalid - [Tags] OOM-CERT-SERVICE + [Tags] OOM-CERT-SERVICE OOM-CERT-SERVICE-CLIENT [Documentation] Run with invalid OUTPUT_TYPE env and expected exit code 1 Run Cert Service Client And Validate Client Exit Code ${INVALID_ENV_FILE_OUTPUT_TYPE} 1 Run Cert Service Client Container And Validate Exit Code And API Response - [Tags] OOM-CERT-SERVICE + [Tags] OOM-CERT-SERVICE OOM-CERT-SERVICE-CLIENT [Documentation] Run with invalid CaName env and expected exit code 5 Run Cert Service Client And Validate Http Response Code And Client Exit Code ${INVALID_ENV_FILE} 404 5 diff --git a/tests/oom-platform-cert-service/certservice/libraries/ResponseParser.py b/tests/oom-platform-cert-service/certservice/libraries/ResponseParser.py new file mode 100644 index 00000000..d4de5f28 --- /dev/null +++ b/tests/oom-platform-cert-service/certservice/libraries/ResponseParser.py @@ -0,0 +1,3 @@ +def parse_response(response): + certChain = response["certificateChain"] + return "".join(certChain).encode("base64").replace("\n", "").strip() diff --git a/tests/oom-platform-cert-service/certservice/resources/cert-service-keywords.robot b/tests/oom-platform-cert-service/certservice/resources/cert-service-keywords.robot index be2812d9..755cf989 100644 --- a/tests/oom-platform-cert-service/certservice/resources/cert-service-keywords.robot +++ b/tests/oom-platform-cert-service/certservice/resources/cert-service-keywords.robot @@ -5,10 +5,13 @@ Resource ./cert-service-properties.robot Library RequestsLibrary Library HttpLibrary.HTTP Library Collections +Library Process +Library DateTime Library ../libraries/CertClientManager.py ${MOUNT_PATH} ${TRUSTSTORE_PATH} Library ../libraries/P12ArtifactsValidator.py ${MOUNT_PATH} Library ../libraries/JksArtifactsValidator.py ${MOUNT_PATH} Library ../libraries/PemArtifactsValidator.py ${MOUNT_PATH} +Library ../libraries/ResponseParser.py *** Keywords *** @@ -88,6 +91,93 @@ Send Post Request And Validate Response ${resp}= Post Request ${https_valid_cert_session} ${path} Should Be Equal As Strings ${resp.status_code} ${resp_code} +Send Initialization Request And Key Update Request And Expect Success + [Documentation] Send initialization request and then key update request to passed urls and validate received response + [Arguments] ${path} ${update_path} ${csr_file} ${pk_file} ${update_csr_file} ${update_pk_file} + ${start_time}= Get Current Timestamp For Docker Log + Send Initialization Request And Update Request And Check Status Code ${path} ${update_path} ${csr_file} ${pk_file} + ... ${update_csr_file} ${update_pk_file} 200 + Verify Key Update Request Sent By Cert Service ${start_time} + +Send Initialization Request And Certification Request And Expect Success + [Documentation] Send initialization request and then certification request to passed urls and validate received response + [Arguments] ${path} ${update_path} ${csr_file} ${pk_file} ${update_csr_file} ${update_pk_file} + ${start_time}= Get Current Timestamp For Docker Log + Send Initialization Request And Update Request And Check Status Code ${path} ${update_path} ${csr_file} ${pk_file} + ... ${update_csr_file} ${update_pk_file} 200 + Verify Certification Request Sent By Cert Service ${start_time} + +Send Initialization Request And Key Update Request With Wrong Old Private Key And Expect Error + [Documentation] Send initialization request and then key update request to passed urls and expect status code 500 + [Arguments] ${path} ${update_path} ${csr_file} ${pk_file} ${update_csr_file} ${update_pk_file} ${wrong_old_pk_file} + ${start_time}= Get Current Timestamp For Docker Log + ${old_cert}= Send Certificate Initialization Request And Return Certificate ${path} ${csr_file} ${pk_file} + ${resp}= Send Certificate Update Request And Return Response ${update_path} ${update_csr_file} ${update_pk_file} ${old_cert} ${wrong_old_pk_file} + Should Be Equal As Strings ${resp.status_code} 500 + Verify Key Update Request Sent By Cert Service ${start_time} + +Send Update Request With Wrong Header And Expect Error + [Documentation] Send update request to passed url and expect wrong header response + [Arguments] ${update_path} ${update_csr_file} ${update_pk_file} ${old_cert_base64} ${old_pk_file} + ${resp}= Send Certificate Update Request And Return Response ${update_path} ${update_csr_file} ${update_pk_file} ${old_cert_base64} ${old_pk_file} + Should Be Equal As Strings ${resp.status_code} 400 + +Send Update Request With Missing Header And Expect Error + [Documentation] Send update request to passed url and expect wrong header response + [Arguments] ${update_path} ${update_csr_file} ${update_pk_file} ${old_cert_base64} ${old_pk_file} ${header_to_remove} + ${headers}= Create Header for Certificate Update ${update_csr_file} ${update_pk_file} ${old_cert_base64} ${old_pk_file} + Remove From Dictionary ${headers} ${header_to_remove} + ${resp}= Get Request ${https_valid_cert_session} ${update_path} headers=${headers} + Should Be Equal As Strings ${resp.status_code} 400 + +Send Initialization Request And Update Request And Check Status Code + [Documentation] Send certificate update request and check status code + [Arguments] ${path} ${update_path} ${csr_file} ${pk_file} ${update_csr_file} ${update_pk_file} ${expected_status_code} + ${old_cert}= Send Certificate Initialization Request And Return Certificate ${path} ${csr_file} ${pk_file} + ${resp}= Send Certificate Update Request And Return Response ${update_path} ${update_csr_file} ${update_pk_file} ${old_cert} ${pk_file} + Should Be Equal As Strings ${resp.status_code} ${expected_status_code} + +Send Certificate Initialization Request And Return Certificate + [Documentation] Send certificate initialization request and return base64 encoded certificate from response + [Arguments] ${path} ${csr_file} ${pk_file} + [Return] ${base64Certificate} + ${resp}= Send Get Request with Header ${path} ${csr_file} ${pk_file} + ${json}= Parse Json ${resp.content} + ${base64Certificate}= Parse Response ${json} + +Send Certificate Update Request And Return Response + [Documentation] Send certificate update request and return response code + [Arguments] ${path} ${csr_file} ${pk_file} ${old_cert} ${old_pk_file} + [Return] ${resp} + ${headers}= Create Header for Certificate Update ${csr_file} ${pk_file} ${old_cert} ${old_pk_file} + ${resp}= Get Request ${https_valid_cert_session} ${path} headers=${headers} + +Create Header for Certificate Update + [Documentation] Create header with CSR and PK, OLD_CERT and OLD_PK + [Arguments] ${csr_file} ${pk_file} ${old_cert} ${old_pk_file} + [Return] ${headers} + ${csr}= Get Data From File ${csr_file} + ${pk}= Get Data From File ${pk_file} + ${old_pk}= Get Data From File ${old_pk_file} + ${headers}= Create Dictionary CSR=${csr} PK=${pk} OLD_CERT=${old_cert} OLD_PK=${old_pk} + +Verify Key Update Request Sent By Cert Service + [Documentation] Verify that request was key update request + [Arguments] ${start_time} + ${result}= Run Process docker logs oomcert-service --since ${start_time} shell=yes + Should Contain ${result.stdout} ${EXPECTED_KUR_LOG} + +Verify Certification Request Sent By Cert Service + [Documentation] Verify that request was certification request + [Arguments] ${start_time} + ${result}= Run Process docker logs oomcert-service --since ${start_time} shell=yes + Should Contain ${result.stdout} ${EXPECTED_CR_LOG} + +Get Current Timestamp For Docker Log + [Documentation] Gets current timestamp valid for docker + [Return] ${timestamp} + ${timestamp}= Get Current Date result_format=%Y-%m-%dT%H:%M:%S.%f + Run Cert Service Client And Validate PKCS12 File Creation And Client Exit Code [Documentation] Run Cert Service Client Container And Validate Exit Code [Arguments] ${env_file} ${expected_exit_code} diff --git a/tests/oom-platform-cert-service/certservice/resources/cert-service-properties.robot b/tests/oom-platform-cert-service/certservice/resources/cert-service-properties.robot index d2ff4eeb..f5882abe 100644 --- a/tests/oom-platform-cert-service/certservice/resources/cert-service-properties.robot +++ b/tests/oom-platform-cert-service/certservice/resources/cert-service-properties.robot @@ -6,27 +6,42 @@ ${OOMCERT_URL} https://localhost:${cert_service_port} ${CLIENT_CA_NAME} Client ${RA_CA_NAME} RA ${CERT_SERVICE_ENDPOINT} /v1/certificate/ -${ROOTCA} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/certs/root.crt -${CERTSERVICE_SERVER_CRT} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/certs/certServiceServer.crt -${CERTSERVICE_SERVER_KEY} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/certs/certServiceServer.key -${VALID_CLIENT_CSR_FILE} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/valid_client.csr -${VALID_CLIENT_PK_FILE} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/valid_client.pk -${VALID_RA_CSR_FILE} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/valid_ra.csr -${VALID_RA_PK_FILE} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/valid_ra.pk -${VALID_RA_ALL_SANS_CSR_FILE} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/valid_ra_all_sans.csr -${VALID_RA_ALL_SANS_PK_FILE} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/valid_ra_all_sans.pk -${INVALID_CSR_FILE} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/invalid.csr -${INVALID_PK_FILE} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/invalid.key +${CERT_SERVICE_UPDATE_ENDPOINT} /v1/certificate-update/ +${ASSETS_DIR} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets +${ROOTCA} ${ASSETS_DIR}/certs/root.crt +${CERTSERVICE_SERVER_CRT} ${ASSETS_DIR}/certs/certServiceServer.crt +${CERTSERVICE_SERVER_KEY} ${ASSETS_DIR}/certs/certServiceServer.key +${VALID_CLIENT_CSR_FILE} ${ASSETS_DIR}/valid_client.csr +${VALID_CLIENT_PK_FILE} ${ASSETS_DIR}/valid_client.pk +${VALID_RA_CSR_FILE} ${ASSETS_DIR}/valid_ra.csr +${VALID_RA_PK_FILE} ${ASSETS_DIR}/valid_ra.pk +${VALID_RA_ALL_SANS_CSR_FILE} ${ASSETS_DIR}/valid_ra_all_sans.csr +${VALID_RA_ALL_SANS_PK_FILE} ${ASSETS_DIR}/valid_ra_all_sans.pk +${INVALID_CSR_FILE} ${ASSETS_DIR}/invalid.csr +${INVALID_PK_FILE} ${ASSETS_DIR}/invalid.csr +${VALID_IR_CSR_FOR_UPDATE} ${ASSETS_DIR}/valid_ir_for_update.csr +${VALID_IR_KEY_FOR_UPDATE} ${ASSETS_DIR}/valid_ir_for_update.key +${INVALID_IR_KEY_FOR_UPDATE} ${ASSETS_DIR}/invalid_ir_for_update.key +${VALID_KUR_CSR} ${ASSETS_DIR}/valid_kur.csr +${VALID_KUR_KEY} ${ASSETS_DIR}/valid_kur.key +${VALID_CR_CSR_CHANGED_SUBJECT} ${ASSETS_DIR}/valid_cr_changed_subject.csr +${VALID_CR_KEY_CHANGED_SUBJECT} ${ASSETS_DIR}/valid_cr_changed_subject.key +${VALID_CR_CSR_CHANGED_SANS} ${ASSETS_DIR}/valid_cr_changed_sans.csr +${VALID_CR_KEY_CHANGED_SANS} ${ASSETS_DIR}/valid_cr_changed_sans.key +${EXPECTED_KUR_LOG} Preparing Key Update Request +${EXPECTED_CR_LOG} Preparing Certification Request +${VALID_OLD_CERT_BASE64} LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUVpekNDQXZPZ0F3SUJBZ0lVR0VwMkdaNlk4bnpEQTlDS2w1blVSSTdDVU44d0RRWUpLb1pJaHZjTkFRRUwKQlFBd1lURWpNQ0VHQ2dtU0pvbVQ4aXhrQVFFTUUyTXRNR3BpWm5FNGNXRXhabTh3ZDJ0dGJua3hGVEFUQmdOVgpCQU1NREUxaGJtRm5aVzFsYm5SRFFURWpNQ0VHQTFVRUNnd2FSVXBDUTBFZ1EyOXVkR0ZwYm1WeUlGRjFhV05yCmMzUmhjblF3SGhjTk1qRXdOakk1TURZMU1ESTFXaGNOTWpNd05qSTVNRFkxTURJMFdqQjNNUkV3RHdZRFZRUUQKREFodmJtRndMbTl5WnpFWk1CY0dBMVVFQ3d3UVRHbHVkWGd0Um05MWJtUmhkR2x2YmpFTk1Bc0dBMVVFQ2d3RQpUMDVCVURFV01CUUdBMVVFQnd3TlUyRnVMVVp5WVc1amFYTmpiekVUTUJFR0ExVUVDQXdLUTJGc2FXWnZjbTVwCllURUxNQWtHQTFVRUJoTUNWVk13Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRREIKenZieXJyRWlhb0JqOGttYTJRbUMrVkxtbXRXRld5QUpnU3JZQTRreHV5cmpRQ1c0SnlGR3ZtemJZb1VGRkxPRgpoZnExOFZqVHMwY2JUeXNYOGNGU2ZrVjJFS0dFUkJhWm5aUlFzbzZTSUpOR2EzeE1lNUZIalJFeTM0TnAwNElICmpTUTQyZUlCZ2NOaUlhZGE0amdFbklRUVlRSlNQUXRIa2ZPTUM2TyszUnBUL2VIdHZvNXVyUjE2TUZZMUs2c28KbldZaXRJNVRwRUtSb3phdjZ6cVUvb3RIZ241alJMcnlqMElaeTBpamxCZlNLVHhyRmZacjNLb01EdWRWRWZVTQp0c3FFUjNwb2MxZ0ZrcW1DUkszOEJQTmlZN3Y1S0FUUkIrZldOK1A3NW13NDNkcng5ckltcCtKdHBPVXNESzhyCklCZDhvNGFmTnZyL1dyeWdCQjhyQWdNQkFBR2pnYVF3Z2FFd0RBWURWUjBUQVFIL0JBSXdBREFmQmdOVkhTTUUKR0RBV2dCUjlNMXFVblFNMENwSFV6MzRGNXNWVVVjSUR0akFZQmdOVkhSRUVFVEFQZ2cxMFpYTjBMbTl1WVhBdQpiM0puTUNjR0ExVWRKUVFnTUI0R0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREJBWUlLd1lCQlFVSEF3RXdIUVlEClZSME9CQllFRkFmcWNVNnhHaThqempsUnVLUUJ0cVJjWGkrdU1BNEdBMVVkRHdFQi93UUVBd0lGNERBTkJna3EKaGtpRzl3MEJBUXNGQUFPQ0FZRUFBZHc3N3E3c2hLdFM4bERHY0ovWThkRWpqTlNsUnRVMTRFTUM1OWttS2VmdApSaTdkMG9DUVh0ZFJDdXQzeW1pekxWcVFrbVg2U3JHc2hwV1VzTnpUZElUalE2SkIyS09haUlXSUY2ME5TbGVXCjB2TG0zNkVtWTFFcksrektlN3R2R1daaFROVnpCWHRucStBTWZKYzQxdTJ1ZWxreDBMTmN6c1g5YUNhakxIMXYKNHo0WHNVbm05cWlYcG5FbTYzMmVtdUp5ajZOdDBKV1Z1TlRKVFBSbnFWWmY2S0tSODN2OEp1VjBFZWZXZDVXVgpjRnNwTDBIM01LSlY3dWY3aGZsbG5JY1J0elhhNXBjdEJDYm9GU2hWa1JOYUFNUHBKZjBEQkxReG03ZEFXajVBCmhHMXJ3bVRtek02TnB3R0hXL0kxU0ZNbXRRaUYwUEFDejFVbjZuRFcvUmYxaUhFb0dmOFlCTFAzMzJMSlNEdWcKUktuMGNNM1FUY3lVRXpDWnhTd0tKMm5nQzllRzlDMmQzWWhCNlp4dGwrZ1VJYTNBd3dQYnFyN1lSOVFrRDJFbwpkNExxRUg5em55QmZpN2syWUN3UDZydGZTaTZDbHliWGU4ZUJjdU1FUzRUQVFmRks2RlZmNTh0R1FJeDA2STBPCjM0bmVtWndrTG9PQnpaa2VwYVF2Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K +${INVALID_OLD_CERT_BASE64} aW5jb3JyZWN0X29sZF9jZXJ0Cg== ${CERT_SERVICE_ADDRESS} https://${CERT_SERVICE_CONTAINER_NAME}:${CERT_SERVICE_PORT} -${VALID_ENV_FILE} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/valid_client_docker.env -${VALID_ENV_FILE_JKS} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/valid_client_docker_jks.env -${VALID_ENV_FILE_P12} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/valid_client_docker_p12.env -${VALID_ENV_FILE_PEM} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/valid_client_docker_pem.env -${VALID_ENV_FILE_ALL_SANS_TYPES} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/valid_client_docker_all_sans_types.env -${INVALID_ENV_FILE_OUTPUT_TYPE} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/invalid_client_docker_output_type.env -${INVALID_ENV_FILE} %{WORKSPACE}/tests/oom-platform-cert-service/certservice/assets/invalid_client_docker.env +${VALID_ENV_FILE} ${ASSETS_DIR}/valid_client_docker.env +${VALID_ENV_FILE_JKS} ${ASSETS_DIR}/valid_client_docker_jks.env +${VALID_ENV_FILE_P12} ${ASSETS_DIR}/valid_client_docker_p12.env +${VALID_ENV_FILE_PEM} ${ASSETS_DIR}/valid_client_docker_pem.env +${VALID_ENV_FILE_ALL_SANS_TYPES} ${ASSETS_DIR}/valid_client_docker_all_sans_types.env +${INVALID_ENV_FILE_OUTPUT_TYPE} ${ASSETS_DIR}/invalid_client_docker_output_type.env +${INVALID_ENV_FILE} ${ASSETS_DIR}/invalid_client_docker.env ${DOCKER_CLIENT_IMAGE} nexus3.onap.org:10001/onap/org.onap.oom.platform.cert-service.oom-certservice-client:2.3.3 ${CLIENT_CONTAINER_NAME} %{ClientContainerName} ${CERT_SERVICE_NETWORK} certservice_certservice