Skip to content

Commit 5c354a0

Browse files
authored
Fix for new CRD and operator name parameterization (#109)
Signed-off-by: Sergio Arroutbi <[email protected]>
1 parent f648d7c commit 5c354a0

File tree

101 files changed

+860
-15
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

101 files changed

+860
-15
lines changed

Sanity/DAST_test/runtest.sh

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,10 @@
3232

3333
rlJournalStart
3434
rlPhaseStartSetup
35+
if [ -z "${OPERATOR_NAME}" ];
36+
then
37+
OPERATOR_NAME=tang-operator
38+
fi
3539
rlRun 'rlImport "common-cloud-orchestration/ocpop-lib"' || rlDie "cannot import ocpop lib"
3640
rlRun ". ../../TestHelpers/functions.sh" || rlDie "cannot import function script"
3741
TO_DAST_POD_COMPLETED=300 #seconds (DAST lasts around 120 seconds)
@@ -59,20 +63,25 @@ rlJournalStart
5963

6064
# 3 - download configuration file template
6165
# WARNING: if tang-operator is changed to OpenShift organization, change this
62-
rlRun "curl -o tang_operator.yaml https://raw.githubusercontent.com/latchset/tang-operator/main/tools/scan_tools/tang_operator_template.yaml"
66+
if [ -z "${KONFLUX}" ];
67+
then
68+
rlRun "curl -o tang_operator.yaml https://raw.githubusercontent.com/latchset/tang-operator/main/tools/scan_tools/tang_operator_template.yaml"
69+
else
70+
rlRun "curl -o tang_operator.yaml https://raw.githubusercontent.com/openshift/nbde-tang-server/main/tools/scan_tools/tang_operator_template.yaml"
71+
fi
6372

6473
# 4 - adapt configuration file template (token, machine)
6574
if [ "${EXECUTION_MODE}" == "MINIKUBE" ];
6675
then
6776
API_HOST_PORT=$(minikube ip)
6877
DEFAULT_TOKEN="TEST_TOKEN_UNREQUIRED_IN_MINIKUBE"
6978
else
70-
API_HOST_PORT=$("${OC_CLIENT}" whoami --show-server | tr -d ' ')
79+
API_HOST_PORT=$("${OC_CLIENT}" whoami --show-server | tr -d ' ' | sed -e s@https://@@g)
7180
DEFAULT_TOKEN=$("${OC_CLIENT}" get secret -n "${OPERATOR_NAMESPACE}" "$("${OC_CLIENT}" get secret -n "${OPERATOR_NAMESPACE}"\
72-
| grep ^tang-operator | grep service-account | awk '{print $1}')" -o json | jq -Mr '.data.token' | base64 -d)
81+
| grep ^${OPERATOR_NAME} | grep service-account | awk '{print $1}')" -o json | jq -Mr '.data.token' | base64 -d)
7382
test -z "${DEFAULT_TOKEN}" &&\
7483
DEFAULT_TOKEN=$("${OC_CLIENT}" get secret -n "${OPERATOR_NAMESPACE}" $("${OC_CLIENT}" get secret -n "${OPERATOR_NAMESPACE}"\
75-
| grep ^tang-operator | awk '{print $1}') -o json | jq -M '.data | .[]' | tr -d '"')
84+
| grep ^${OPERATOR_NAME} | awk '{print $1}') -o json | jq -M '.data | .[]' | tr -d '"')
7685
echo "API_HOST_PORT=${API_HOST_PORT}"
7786
echo "DEFAULT_TOKEN=${DEFAULT_TOKEN}"
7887
fi
@@ -88,9 +97,10 @@ rlJournalStart
8897
pushd rapidast || exit
8998
sed -i s@"kubectl --kubeconfig=./kubeconfig "@"${OC_CLIENT} "@g helm/results.sh
9099
sed -i s@"secContext: '{}'"@"secContext: '{\"privileged\": true}'"@ helm/chart/values.yaml
91-
sed -i s@'tag: "latest"'@'tag: "2.6.0"'@g helm/chart/values.yaml
100+
sed -i s@'tag: "latest"'@'tag: "2.8.0"'@g helm/chart/values.yaml
92101

93102
# 6 - run rapidast on adapted configuration file (via helm)
103+
helm uninstall rapidast
94104
rlRun -c "helm install rapidast ./helm/chart/ --set-file rapidastConfig=${tmpdir}/tang_operator.yaml 2>/dev/null" 0 "Installing rapidast helm chart"
95105
pod_name=$(ocpopGetPodNameWithPartialName "rapidast" "default" 5 1)
96106
rlRun "ocpopCheckPodState Completed ${TO_DAST_POD_COMPLETED} default ${pod_name}" 0 "Checking POD ${pod_name} in Completed state [Timeout=${TO_DAST_POD_COMPLETED} secs.]"

Sanity/key_management_test/runtest.sh

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,10 @@ rlJournalStart
3636
rlRun ". ../../TestHelpers/functions.sh" || rlDie "cannot import function script"
3737
TO_ACTIVE_KEYS=60 #seconds
3838
TO_HIDDEN_KEYS=60 #seconds
39-
39+
if [ -z "${OPERATOR_NAME}" ];
40+
then
41+
OPERATOR_NAME=tang-operator
42+
fi
4043
rlRun "${OC_CLIENT} apply -f ${TANG_FUNCTION_DIR}/reg_test/key_management_test/minimal-keyretrieve/daemons_v1alpha1_pv.yaml" 0 "Creating key management test pv"
4144
rlRun "${OC_CLIENT} apply -f ${TANG_FUNCTION_DIR}/reg_test/key_management_test/minimal-keyretrieve/daemons_v1alpha1_tangserver.yaml" 0 "Creating key management test tangserver"
4245
rlRun "ocpopCheckPodAmount 1 ${TO_POD_START} ${TEST_NAMESPACE}" 0 "Checking 1 POD is started [Timeout=${TO_POD_START} secs.]"
@@ -75,6 +78,7 @@ rlJournalStart
7578
rlRun "${OC_CLIENT} apply -f ${TANG_FUNCTION_DIR}/reg_test/key_management_test/multiple-keyretrieve/daemons_v1alpha1_pv.yaml" 0 "Creating multiple key management test pv"
7679
rlRun "${OC_CLIENT} apply -f ${TANG_FUNCTION_DIR}/reg_test/key_management_test/multiple-keyretrieve/daemons_v1alpha1_tangserver.yaml" 0 "Creating multiple key management test tangserver"
7780
sed "s/{{OPERATOR_NAMESPACE}}/${OPERATOR_NAMESPACE}/g" < "${TANG_FUNCTION_DIR}/reg_test/key_management_test/multiple-keyretrieve/daemons_v1alpha1_clusterrolebinding.yaml" | ${OC_CLIENT} apply -f -
81+
sed "s/{{OPERATOR_NAME}}/${OPERATOR_NAME}/g" < $TANG_FUNCTION_DIR/reg_test/key_management_test/multiple-keyretrieve/daemons_v1alpha1_clusterrolebinding.yaml | ${OC_CLIENT} apply -f -
7882
rlRun "ocpopCheckPodAmount 3 ${TO_POD_START} ${TEST_NAMESPACE}" 0 "Checking 3 PODs are started [Timeout=${TO_POD_START} secs.]"
7983
pod1_name=$(ocpopGetPodNameWithPartialName "tang" "${TEST_NAMESPACE}" 5 1)
8084
pod2_name=$(ocpopGetPodNameWithPartialName "tang" "${TEST_NAMESPACE}" 5 2)
@@ -88,6 +92,7 @@ rlJournalStart
8892
rlRun "${OC_CLIENT} delete -f ${TANG_FUNCTION_DIR}/reg_test/key_management_test/multiple-keyretrieve/daemons_v1alpha1_tangserver.yaml" 0 "Deleting key management test tangserver"
8993
rlRun "${OC_CLIENT} delete -f ${TANG_FUNCTION_DIR}/reg_test/key_management_test/multiple-keyretrieve/daemons_v1alpha1_pv.yaml" 0 "Deleting key management test pv"
9094
sed "s/{{OPERATOR_NAMESPACE}}/${OPERATOR_NAMESPACE}/g" < "${TANG_FUNCTION_DIR}/reg_test/key_management_test/multiple-keyretrieve/daemons_v1alpha1_clusterrolebinding.yaml" | ${OC_CLIENT} delete -f -
95+
sed "s/{{OPERATOR_NAME}}/${OPERATOR_NAME}/g" < $TANG_FUNCTION_DIR/reg_test/key_management_test/multiple-keyretrieve/daemons_v1alpha1_clusterrolebinding.yaml | ${OC_CLIENT} delete -f -
9196
rlRun "ocpopCheckPodAmount 0 ${TO_POD_STOP} ${TEST_NAMESPACE}" 0 "Checking no PODs continue running [Timeout=${TO_POD_STOP} secs.]"
9297
rlRun "ocpopCheckServiceAmount 0 ${TO_SERVICE_STOP} ${TEST_NAMESPACE}" 0 "Checking no Services continue running [Timeout=${TO_SERVICE_STOP} secs.]"
9398
rlPhaseEnd

Sanity/malware_detection_test/runtest.sh

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,10 @@ rlJournalStart
3333
############# MALWARE DETECTION TESTS ############
3434
### Only execute if podman and clamscan commands exist ...
3535
rlPhaseStartTest "Malware Detection Testing"
36+
if [ -z "${OPERATOR_NAME}" ];
37+
then
38+
OPERATOR_NAME=tang-operator
39+
fi
3640
rlRun 'rlImport "common-cloud-orchestration/ocpop-lib"' || rlDie "cannot import ocpop lib"
3741
rlRun ". ../../TestHelpers/functions.sh" || rlDie "cannot import function script"
3842
installed_version=$(ocpopGetVersion)
@@ -42,7 +46,7 @@ rlJournalStart
4246
### Bundle Image
4347
analyzeVersion "${installed_version}"
4448
### Container Image
45-
controller_name=$(ocpopGetPodNameWithPartialName "tang-operator-controller" "${OPERATOR_NAMESPACE}" 1)
49+
controller_name=$(ocpopGetPodNameWithPartialName "${OPERATOR_NAME}-controller" "${OPERATOR_NAMESPACE}" 1)
4650
rlAssertNotEquals "Checking controller_name is not empty" "${controller_name}" ""
4751
container_image=$("${OC_CLIENT}" -n "${OPERATOR_NAMESPACE}" describe pod "${controller_name}" | grep tang | tr -d ' ' | grep "^Image:" | awk -F "Image:" '{print $2}' | tail -1)
4852
if [[ $container_image == *"registry.redhat.io"* ]];then

Setup/clean_cluster/runtest.sh

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,18 +31,22 @@
3131

3232
rlJournalStart
3333
rlPhaseStartCleanup
34+
if [ -z "${OPERATOR_NAME}" ];
35+
then
36+
OPERATOR_NAME=tang-operator
37+
fi
3438
rlRun 'rlImport "common-cloud-orchestration/ocpop-lib"' || rlDie "cannot import ocpop lib"
3539
rlRun ". ../../TestHelpers/functions.sh" || rlDie "cannot import function script"
3640
TO_POD_CONTROLLER_TERMINATE=180 #seconds (for controller to end must wait longer)
3741

3842
rlRun "ocpopCheckClusterStatus" 0 "Checking cluster status"
39-
controller_name=$(ocpopGetPodNameWithPartialName "tang-operator-controller" "${OPERATOR_NAMESPACE}" 1)
43+
controller_name=$(ocpopGetPodNameWithPartialName "${OPERATOR_NAME}-controller" "${OPERATOR_NAMESPACE}" 1)
4044
ocpopLogVerbose "Controller name:[${controller_name}]"
4145
if [ -n "${DOWNSTREAM_IMAGE_VERSION}" ] && [ "${DISABLE_BUNDLE_INSTALL_TESTS}" != "1" ];
4246
then
4347
rlRun "uninstallDownstreamVersion" 0 "Uninstalling downstream version"
4448
fi
45-
rlRun "bundleStop" 0 "Cleaning installed tang-operator"
49+
rlRun "ocpopBundleStop" 0 "Cleaning installed operator"
4650
if [ "${DISABLE_BUNDLE_INSTALL_TESTS}" != "1" ] && [ "${DISABLE_BUNDLE_UNINSTALL_TESTS}" != "1" ];
4751
then
4852
test -z "${controller_name}" ||

Setup/creating_test_namespace/runtest.sh

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,19 +30,25 @@
3030
. /usr/share/beakerlib/beakerlib.sh || exit 1
3131

3232
TIMEOUT_CONTROLLER_KEEPS_RUNNING=10
33+
if [ -z "${OPERATOR_NAME}" ];
34+
then
35+
export OPERATOR_NAME=tang-operator
36+
fi
3337

3438
rlJournalStart
3539
rlPhaseStartSetup
40+
rlLog "OPERATOR_NAME=${OPERATOR_NAME}"
3641
rlRun 'rlImport "common-cloud-orchestration/ocpop-lib"' || rlDie "cannot import ocpop lib"
3742
rlRun ". ../../TestHelpers/functions.sh" || rlDie "cannot import function script"
3843
ocpopDumpDate
3944
ocpopDumpInfo
45+
checkKonflux
4046
rlRun "ocpopDumpOpenShiftClientStatus" 0 "Checking OpenshiftClient installation"
4147
rlRun "operator-sdk version > /dev/null" 0 "Checking operator-sdk installation"
4248
rlRun "ocpopCheckClusterStatus" 0 "Checking cluster status"
4349
# In case previous execution was abruptelly stopped:
44-
rlRun "bundleInitialStop" 0 "Cleaning already installed tang-operator (if any)"
45-
rlRun "bundleStart" 0 "Installing tang-operator-bundle version:${VERSION}"
50+
rlRun "ocpopBundleInitialStop" 0 "Cleaning already installed operator (if any)"
51+
rlRun "bundleStart" 0 "Installing ${OPERATOR_NAME}-bundle version:${VERSION}"
4652
rlRun "${OC_CLIENT} apply -f ${TEST_NAMESPACE_FILE}" 0 "Creating test namespace:${TEST_NAMESPACE}"
4753
rlRun "${OC_CLIENT} get namespace ${TEST_NAMESPACE}" 0 "Checking test namespace:${TEST_NAMESPACE}"
4854
#go through all the files and set substition for TANG_IMAGE keyword
@@ -53,7 +59,8 @@ rlJournalStart
5359

5460
rlPhaseStartTest "Controller runs appropriately"
5561
########## CHECK CONTROLLER RUNS WITH NO ERRORS #########
56-
controller_name=$(ocpopGetPodNameWithPartialName "tang-operator-controller" "${OPERATOR_NAMESPACE}" "${TO_POD_START}")
62+
rlLog "OPERATOR_NAME=${OPERATOR_NAME}"
63+
controller_name=$(ocpopGetPodNameWithPartialName "${OPERATOR_NAME}-controller" "${OPERATOR_NAMESPACE}" "${TO_POD_START}")
5764
rlRun "ocpopCheckPodState Running ${TO_POD_START} ${OPERATOR_NAMESPACE} ${controller_name} Error" 0 \
5865
"Checking controller POD in Running [Timeout=${TO_POD_START} secs.] and not in Error state"
5966
rlRun "ocpopCheckPodStateAndContinues Running ${TIMEOUT_CONTROLLER_KEEPS_RUNNING} ${OPERATOR_NAMESPACE} ${controller_name}" 0 \

TestHelpers/functions.sh

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2828
#
2929
### Global Test Variables
30-
TANG_FUNCTION_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
3130
TO_BUNDLE="15m"
3231
TANG_FUNCTION_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
3332
TEST_NAMESPACE_PATH="${TANG_FUNCTION_DIR}/reg_test/all_test_namespace"
@@ -52,9 +51,13 @@ TO_ALL_POD_CONTROLLER_TERMINATE=120 #seconds
5251
TO_KEY_ROTATION=1 #seconds
5352
[ -n "$TANG_IMAGE" ] || TANG_IMAGE="registry.redhat.io/rhel9/tang"
5453

54+
if [ -z "${OPERATOR_NAME}" ];
55+
then
56+
OPERATOR_NAME=tang-operator
57+
fi
5558
test -z "${DISABLE_BUNDLE_INSTALL_TESTS}" && DISABLE_BUNDLE_INSTALL_TESTS="0"
5659
test -z "${DISABLE_BUNDLE_UNINSTALL_TESTS}" && DISABLE_BUNDLE_UNINSTALL_TESTS="0"
57-
test -z "${IMAGE_VERSION}" && IMAGE_VERSION="quay.io/sec-eng-special/tang-operator-bundle:${VERSION}"
60+
test -z "${IMAGE_VERSION}" && IMAGE_VERSION="quay.io/sec-eng-special/${OPERATOR_NAME}-bundle:${VERSION}"
5861
test -z "${CONTAINER_MGR}" && CONTAINER_MGR="podman"
5962

6063
checkActiveKeysAmount() {
@@ -290,8 +293,12 @@ analyzeVersion() {
290293
}
291294

292295
useUpstreamImages(){
293-
for yaml_file in `find ${TANG_FUNCTION_DIR}/reg_test \( -iname "*.yaml" -o -iname "*.sh" \) -type f -print`
296+
for yaml_file in `find ${TANG_FUNCTION_DIR}/reg_test* \( -iname "*.yaml" -o -iname "*.sh" \) -type f -print`
294297
do
295298
sed -i "s~\"registry.redhat.io/rhel9/tang\"~\"${TANG_IMAGE}\"~g" $yaml_file
296299
done
297300
}
301+
302+
checkKonflux() {
303+
pushd ${TANG_FUNCTION_DIR}; rm -v reg_test; test -z "${KONFLUX}" && ln -s reg_test_ori reg_test || ln -s reg_test_openshift_konflux reg_test; popd
304+
}

TestHelpers/reg_test

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
./reg_test_ori/

0 commit comments

Comments
 (0)