From 389cbad40747ac6c323c216bae090e99abbfbd02 Mon Sep 17 00:00:00 2001 From: AndyWalshe Date: Tue, 9 Apr 2019 14:05:08 +0000 Subject: Removing need for bash script Change-Id: I447ed1d0e791ee38f4434d78a450edc02c222816 Issue-ID: INT-949 Signed-off-by: AndyWalshe --- test/mocks/pnf-onboarding/README.md | 25 ++++++++++++++ test/mocks/pnf-onboarding/pom.xml | 16 +++++++-- test/mocks/pnf-onboarding/readme.md | 40 ---------------------- .../src/main/scripts/generate-signature.sh | 22 ------------ 4 files changed, 38 insertions(+), 65 deletions(-) create mode 100644 test/mocks/pnf-onboarding/README.md delete mode 100644 test/mocks/pnf-onboarding/readme.md delete mode 100644 test/mocks/pnf-onboarding/src/main/scripts/generate-signature.sh (limited to 'test/mocks') diff --git a/test/mocks/pnf-onboarding/README.md b/test/mocks/pnf-onboarding/README.md new file mode 100644 index 000000000..8440b3483 --- /dev/null +++ b/test/mocks/pnf-onboarding/README.md @@ -0,0 +1,25 @@ + +PNF Package for Integration Test +================================ + +**NOTE: Currently this solution only works on Linux OS and requires openssl to be preinstalled.** + +This module builds 2 PNF packages based on the files in `/src/main/resources/csarContent/` + +1. unsigned package: `sample-pnf-1.0.1-SNAPSHOT.csar` +2. signed package: `sample-signed-pnf-1.0.1-SNAPSHOT.zip` + +The signed package is based on ETSI SOL004 Security Option 2. It contains the csar, cert and cms files. + +The packages are generated by running the following command in the same directory as this readme file i.e. pnf-onboarding directory: +> `$ mvn clean install` + +The packages will be stored in the maven generated `target` directory. + +To be able to use the signed package in SDC the `src/main/resources/securityContent/root.cert` file has to be loaded into SDC onboarding backend container. + +If SDC is running in containers locally then the following commands could be used to copy the root.cert to the default location in SDC Onboarding Container. It is assumed that the commands are executed from inside pnf-onboarding directory. + +> `$ docker exec -it mkdir -p /var/lib/jetty/cert` + +> `$ docker cp src/main/resources/securityContent/root.cert :/var/lib/jetty` diff --git a/test/mocks/pnf-onboarding/pom.xml b/test/mocks/pnf-onboarding/pom.xml index 569d1e2e4..7f513eb00 100644 --- a/test/mocks/pnf-onboarding/pom.xml +++ b/test/mocks/pnf-onboarding/pom.xml @@ -128,11 +128,21 @@ - src/main/scripts/generate-signature.sh + openssl - src/main/resources/securityContent/sample-pnf.cert - src/main/resources/securityContent/sample-pnf-private-key.pem + cms + -sign + -binary + -nocerts + -outform + pem + -signer + ${project.basedir}/src/main/resources/securityContent/sample-pnf.cert + -inkey + ${project.basedir}/src/main/resources/securityContent/sample-pnf-private-key.pem + -in ${project.build.directory}/signed-csar/${csar.name}.csar + -out ${project.build.directory}/signed-csar/${csar.name}.cms diff --git a/test/mocks/pnf-onboarding/readme.md b/test/mocks/pnf-onboarding/readme.md deleted file mode 100644 index 4ddf701b5..000000000 --- a/test/mocks/pnf-onboarding/readme.md +++ /dev/null @@ -1,40 +0,0 @@ -# PNF Package for Integration Test - - - -Builds 2 PNF packages based on the files in `/src/main/resources/csarContent/` - - - -1. unsigned package: - - `sample-pnf-1.0.1-SNAPSHOT.csar` - - - -2. signed package: - - `sample-signed-pnf-1.0.1-SNAPSHOT.zip` -The signed package is based on ETSI SOL004 Security Option 2. It contains csar, cert and cms files. - -The packages are generated by running the following command in the same directory as this readme file i.e. pnf-onboarding directory: -> `mvn clean install` - - - -The packages will be stored in target folder under the pnf-onboarding directory. -**NOTE: Currently this solution works for Linux OS only.** - - - -To be able to use the signed package in SDC the `src/main/resources/securityContent/root.cert` file has to be loaded into SDC onboarding backend container. - - - -If SDC is running in containers locally then the following commands could be used to copy the root.cert to the default location in SDC Onboarding Container. It is assumed that the commands are executed from inside pnf-onboarding directory. - -``` - docker exec -it mkdir -p /var/lib/jetty/cert - docker cp src/main/resources/securityContent/root.cert :/var/lib/jetty -``` - diff --git a/test/mocks/pnf-onboarding/src/main/scripts/generate-signature.sh b/test/mocks/pnf-onboarding/src/main/scripts/generate-signature.sh deleted file mode 100644 index f9950cfeb..000000000 --- a/test/mocks/pnf-onboarding/src/main/scripts/generate-signature.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash - -signingCertificate=$1 -signingCertPrivateKey=$2 -csarFile=$3 -signatureName=$4 - -echo Creating signature file with following inputs -printf "\t%s = %s\n" "signingCertificate" $signingCertificate -printf "\t%s = %s\n" "signingCertPrivateKey" $signingCertPrivateKey -printf "\t%s = %s\n" "csarFile" $csarFile - -openssl cms -sign -signer $signingCertificate -inkey $signingCertPrivateKey -outform pem -binary -nocerts < $csarFile > $signatureName - -retVal=$? -if [ $retVal -eq 0 ]; then - echo Signature file $signatureName created successfully -else - echo Failed to create Signature file $signatureName -fi - -exit $retVal -- cgit 1.2.3-korg