Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

e2e: Allow testing custom cni and dp image #518

Merged
merged 2 commits into from
Jan 29, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions hack/run-e2e-conformance-common
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
#!/bin/bash

podman_tag_and_push() {
local_image=$1
cluster_image=$2

echo "## Pushing ${local_image} to cluster registry ${cluster_image}"
podman tag ${local_image} ${cluster_image}
podman push --tls-verify=false ${cluster_image}
}
27 changes: 27 additions & 0 deletions hack/run-e2e-conformance-virtual-cluster.sh
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ if [ "$NUM_OF_WORKERS" -lt 2 ]; then
exit 1
fi

source $here/run-e2e-conformance-common

check_requirements() {
for cmd in kcli virsh virt-edit podman make go; do
if ! command -v "$cmd" &> /dev/null; then
Expand Down Expand Up @@ -294,6 +296,23 @@ podman rmi -fi ${SRIOV_NETWORK_CONFIG_DAEMON_IMAGE}
podman push --tls-verify=false "${SRIOV_NETWORK_WEBHOOK_IMAGE}"
podman rmi -fi ${SRIOV_NETWORK_WEBHOOK_IMAGE}


SchSeba marked this conversation as resolved.
Show resolved Hide resolved
if [[ -v LOCAL_SRIOV_CNI_IMAGE ]]; then
export SRIOV_CNI_IMAGE="$controller_ip:5000/sriov-cni:latest"
podman_tag_and_push ${LOCAL_SRIOV_CNI_IMAGE} ${SRIOV_CNI_IMAGE}
fi

if [[ -v LOCAL_SRIOV_DEVICE_PLUGIN_IMAGE ]]; then
export SRIOV_DEVICE_PLUGIN_IMAGE="$controller_ip:5000/sriov-network-device-plugin:latest"
podman_tag_and_push ${LOCAL_SRIOV_DEVICE_PLUGIN_IMAGE} ${SRIOV_DEVICE_PLUGIN_IMAGE}
fi

if [[ -v LOCAL_NETWORK_RESOURCES_INJECTOR_IMAGE ]]; then
export NETWORK_RESOURCES_INJECTOR_IMAGE="$controller_ip:5000/network-resources-injector:latest"
podman_tag_and_push ${LOCAL_NETWORK_RESOURCES_INJECTOR_IMAGE} ${NETWORK_RESOURCES_INJECTOR_IMAGE}
fi


# remove the crio bridge and let flannel to recreate
kcli ssh $cluster_name-ctlplane-0 << EOF
sudo su
Expand Down Expand Up @@ -407,9 +426,17 @@ if [ -z $SKIP_TEST ]; then
export JUNIT_OUTPUT="${root}/${TEST_REPORT_PATH}/conformance-test-report"
fi

# Disable exit on error temporarily to gather cluster information
SchSeba marked this conversation as resolved.
Show resolved Hide resolved
set +e
SUITE=./test/conformance hack/run-e2e-conformance.sh
TEST_EXITE_CODE=$?
set -e

if [[ -v TEST_REPORT_PATH ]]; then
kubectl cluster-info dump --namespaces ${NAMESPACE} --output-directory "${root}/${TEST_REPORT_PATH}/cluster-info"
fi

if [[ $TEST_EXITE_CODE -ne 0 ]]; then
exit $TEST_EXITE_CODE
fi
fi
25 changes: 25 additions & 0 deletions hack/run-e2e-conformance-virtual-ocp.sh
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ fi
here="$(dirname "$(readlink --canonicalize "${BASH_SOURCE[0]}")")"
root="$(readlink --canonicalize "$here/..")"

source $here/run-e2e-conformance-common

check_requirements() {
for cmd in kcli virsh podman make go jq base64 tar; do
if ! command -v "$cmd" &> /dev/null; then
Expand Down Expand Up @@ -263,6 +265,21 @@ export SRIOV_NETWORK_OPERATOR_IMAGE="image-registry.openshift-image-registry.svc
export SRIOV_NETWORK_CONFIG_DAEMON_IMAGE="image-registry.openshift-image-registry.svc:5000/$NAMESPACE/sriov-network-config-daemon:latest"
export SRIOV_NETWORK_WEBHOOK_IMAGE="image-registry.openshift-image-registry.svc:5000/$NAMESPACE/sriov-network-operator-webhook:latest"

if [[ -v LOCAL_SRIOV_CNI_IMAGE ]]; then
podman_tag_and_push ${LOCAL_SRIOV_CNI_IMAGE} "$registry/$NAMESPACE/sriov-cni:latest"
export SRIOV_CNI_IMAGE="image-registry.openshift-image-registry.svc:5000/$NAMESPACE/sriov-cni:latest"
fi

if [[ -v LOCAL_SRIOV_DEVICE_PLUGIN_IMAGE ]]; then
podman_tag_and_push ${LOCAL_SRIOV_DEVICE_PLUGIN_IMAGE} "$registry/$NAMESPACE/sriov-network-device-plugin:latest"
export SRIOV_DEVICE_PLUGIN_IMAGE="image-registry.openshift-image-registry.svc:5000/$NAMESPACE/sriov-network-device-plugin:latest"
fi

if [[ -v LOCAL_NETWORK_RESOURCES_INJECTOR_IMAGE ]]; then
podman_tag_and_push ${LOCAL_NETWORK_RESOURCES_INJECTOR_IMAGE} "$registry/$NAMESPACE/network-resources-injector:latest"
export NETWORK_RESOURCES_INJECTOR_IMAGE="image-registry.openshift-image-registry.svc:5000/$NAMESPACE/network-resources-injector:latest"
fi

echo "## deploying SRIOV Network Operator"
hack/deploy-setup.sh $NAMESPACE

Expand All @@ -276,9 +293,17 @@ if [ -z $SKIP_TEST ]; then
export JUNIT_OUTPUT="${root}/${TEST_REPORT_PATH}/conformance-test-report"
fi

# Disable exit on error temporarily to gather cluster information
set +e
SchSeba marked this conversation as resolved.
Show resolved Hide resolved
SUITE=./test/conformance hack/run-e2e-conformance.sh
TEST_EXITE_CODE=$?
set -e

if [[ -v TEST_REPORT_PATH ]]; then
kubectl cluster-info dump --namespaces ${NAMESPACE} --output-directory "${root}/${TEST_REPORT_PATH}/cluster-info"
fi

if [[ $TEST_EXITE_CODE -ne 0 ]]; then
exit $TEST_EXITE_CODE
fi
fi
Loading