diff options
author | Sylvain Desbureaux <sylvain.desbureaux@orange.com> | 2021-01-19 14:51:24 +0100 |
---|---|---|
committer | Sylvain Desbureaux <sylvain.desbureaux@orange.com> | 2021-01-19 15:14:26 +0000 |
commit | 400b9424a04806d8515e64e0bc586e49ff5c6762 (patch) | |
tree | ded94013f9a434402246e64a86a15164d87bfeeb | |
parent | f2cc30d314acdc5efdbee957416891a49b7ab799 (diff) |
[COMMON][CERTS] Use sh to onboard custom certs
Today, onboarding custom certificates relies on `bash`. But image used
for that doesn't have bash.
Therefore, we need to use `sh` in order to onboard the certs.
Issue-ID: OOM-2666
Signed-off-by: Sylvain Desbureaux <sylvain.desbureaux@orange.com>
Change-Id: Ia8087bd9484a013ac76044681059f634a4e45eb8
-rwxr-xr-x | kubernetes/common/cert-wrapper/resources/import-custom-certs.sh | 20 | ||||
-rw-r--r-- | kubernetes/common/certInitializer/templates/_certInitializer.yaml | 2 |
2 files changed, 14 insertions, 8 deletions
diff --git a/kubernetes/common/cert-wrapper/resources/import-custom-certs.sh b/kubernetes/common/cert-wrapper/resources/import-custom-certs.sh index 7e2fa91363..1ef6d77ced 100755 --- a/kubernetes/common/cert-wrapper/resources/import-custom-certs.sh +++ b/kubernetes/common/cert-wrapper/resources/import-custom-certs.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/bin/sh {{/* # Copyright © 2020 Bell Canada @@ -26,14 +26,20 @@ mkdir -p $WORK_DIR # Decrypt and move relevant files to WORK_DIR for f in $CERTS_DIR/*; do - if [[ $AAF_ENABLED == false ]] && [[ $f == *$ONAP_TRUSTSTORE* ]]; then + export canonical_name_nob64=$(echo $f | sed 's/.*\/\([^\/]*\)/\1/') + export canonical_name_b64=$(echo $f | sed 's/.*\/\([^\/]*\)\(\.b64\)/\1/') + if [ "$AAF_ENABLED" == "false" ] && [ "$canonical_name_b64" == "$ONAP_TRUSTSTORE" ]; then # Dont use onap truststore when aaf is disabled continue fi - if [[ $f == *.sh ]]; then + if [ "$AAF_ENABLED" == "false" ] && [ "$canonical_name_nob64" == "$ONAP_TRUSTSTORE" ]; then + # Dont use onap truststore when aaf is disabled + continue + fi + if [ ${f: -3} == ".sh" ]; then continue fi - if [[ $f == *.b64 ]] + if [ ${f: -4} == ".b64" ] then base64 -d $f > $WORK_DIR/`basename $f .b64` else @@ -42,7 +48,7 @@ for f in $CERTS_DIR/*; do done # Prepare truststore output file -if [[ $AAF_ENABLED == true ]] +if [ "$AAF_ENABLED" == "true" ] then mv $WORK_DIR/$ONAP_TRUSTSTORE $WORK_DIR/$TRUSTSTORE_OUTPUT_FILENAME else @@ -52,10 +58,10 @@ fi # Import Custom Certificates for f in $WORK_DIR/*; do - if [[ $f == *.pem ]]; then + if [ ${f: -4} == ".pem" ]; then echo "importing certificate: $f" keytool -import -file $f -alias `basename $f` -keystore $WORK_DIR/$TRUSTSTORE_OUTPUT_FILENAME -storepass $TRUSTSTORE_PASSWORD -noprompt - if [[ $? != 0 ]]; then + if [ $? != 0 ]; then echo "failed importing certificate: $f" exit 1 fi diff --git a/kubernetes/common/certInitializer/templates/_certInitializer.yaml b/kubernetes/common/certInitializer/templates/_certInitializer.yaml index 800364f1a2..85396a7740 100644 --- a/kubernetes/common/certInitializer/templates/_certInitializer.yaml +++ b/kubernetes/common/certInitializer/templates/_certInitializer.yaml @@ -121,7 +121,7 @@ securityContext: runAsUser: 0 command: - - /bin/bash + - /bin/sh - -c - /root/import-custom-certs.sh env: |