diff --git a/.github/workflows/test-management-ui-for-pr.yaml b/.github/workflows/test-management-ui-for-pr.yaml index ced702da183f..260a163b5590 100644 --- a/.github/workflows/test-management-ui-for-pr.yaml +++ b/.github/workflows/test-management-ui-for-pr.yaml @@ -56,7 +56,7 @@ jobs: cd ${SELENIUM_DIR} docker build -t mocha-test --target test . - - name: Run short ui suites on a standalone rabbitmq server + - name: Run short UI suites on a standalone rabbitmq server run: | IMAGE_TAG=$(find PACKAGES/rabbitmq-server-generic-unix-*.tar.xz | awk -F 'PACKAGES/rabbitmq-server-generic-unix-|.tar.xz' '{print $2}') RABBITMQ_DOCKER_IMAGE=pivotalrabbitmq/rabbitmq:$IMAGE_TAG \ @@ -71,12 +71,3 @@ jobs: name: test-artifacts-${{ matrix.browser }}-${{ matrix.erlang_version }} path: | /tmp/short-suite - - summary-selenium: - needs: - - selenium - runs-on: ubuntu-latest - steps: - - name: SUMMARY - run: | - echo "SUCCESS" diff --git a/.github/workflows/test-management-ui.yaml b/.github/workflows/test-management-ui.yaml index ed3b208cb912..602d9dae95a9 100644 --- a/.github/workflows/test-management-ui.yaml +++ b/.github/workflows/test-management-ui.yaml @@ -3,10 +3,7 @@ on: push: branches: - main - - v4.0.x - - bump-otp-for-oci - - bump-rbe-* - - bump-rules_erlang + - 'v4.*.x' paths: - 'deps/rabbitmq_management/src/**' - 'deps/rabbitmq_management/priv/**' @@ -71,13 +68,13 @@ jobs: cd ${SELENIUM_DIR} docker build -t mocha-test --target test . - - name: Run short ui suite on a 3-node rabbitmq cluster + - name: Run full UI suite on a 3-node rabbitmq cluster run: | IMAGE_TAG=$(find PACKAGES/rabbitmq-server-generic-unix-*.tar.xz | awk -F 'PACKAGES/rabbitmq-server-generic-unix-|.tar.xz' '{print $2}') RABBITMQ_DOCKER_IMAGE=pivotalrabbitmq/rabbitmq:$IMAGE_TAG \ - ${SELENIUM_DIR}/run-suites.sh short-suite-management-ui - mkdir -p /tmp/short-suite - mv /tmp/selenium/* /tmp/short-suite + ${SELENIUM_DIR}/run-suites.sh full-suite-management-ui + mkdir -p /tmp/full-suite + mv /tmp/selenium/* /tmp/full-suite - name: Upload Test Artifacts if: always() @@ -87,12 +84,3 @@ jobs: path: | /tmp/full-suite /tmp/short-suite - - summary-selenium: - needs: - - selenium - runs-on: ubuntu-latest - steps: - - name: SUMMARY - run: | - echo "SUCCESS" diff --git a/selenium/README.md b/selenium/README.md index 2723d8a156e0..5c72d3f44c0a 100644 --- a/selenium/README.md +++ b/selenium/README.md @@ -116,6 +116,20 @@ cd deps/rabbitmq_management/selenium RABBITMQ_DOCKER_IMAGE=bazel/packaging/docker-image:rabbitmq suites/authnz-mgt/oauth-with-uaa-with-mgt-prefix.sh ``` +To customise the Selenium docker image, use the env variable `SELENIUM_DOCKER_IMAGE`: + +``` +cd deps/rabbitmq_management/selenium +SELENIUM_DOCKER_IMAGE=tds-rabbitmq-docker-virtual.usw1.packages.broadcom.com/selenium/standalone-chromium:133.0 ./suites/authnz-mgt/basic-auth.sh +``` + +To customise the temporary directory for test configuration and intermediate container configuration, use `CONF_DIR_PREFIX`. This +variable defaults to `/tmp`. + +``` +cd deps/rabbitmq_management/selenium +CONF_DIR_PREFIX="$PWD/temp" ./suites/authnz-mgt/basic-auth.sh +``` ## Run tests interactively using your local chrome browser diff --git a/selenium/bin/components/rabbitmq b/selenium/bin/components/rabbitmq index 7a550bcdcf6e..2cfeababf201 100644 --- a/selenium/bin/components/rabbitmq +++ b/selenium/bin/components/rabbitmq @@ -147,7 +147,7 @@ start_docker_rabbitmq() { init_rabbitmq kill_container_if_exist rabbitmq - mkdir -p $CONF_DIR/rabbitmq + mkdir -pv $CONF_DIR/rabbitmq/conf.d/ RABBITMQ_TEST_DIR="/var/rabbitmq" ${BIN_DIR}/gen-rabbitmq-conf ${RABBITMQ_CONFIG_DIR} $ENV_FILE $CONF_DIR/rabbitmq/rabbitmq.conf print "> EFFECTIVE RABBITMQ_CONFIG_FILE: $CONF_DIR/rabbitmq/rabbitmq.conf" @@ -161,13 +161,12 @@ start_docker_rabbitmq() { fi fi if [ -f ${RABBITMQ_CONFIG_DIR}/logging.conf ]; then - mkdir -p $CONF_DIR/rabbitmq/conf.d/ cp ${RABBITMQ_CONFIG_DIR}/logging.conf $CONF_DIR/rabbitmq/conf.d/ fi if [ -f ${RABBITMQ_CONFIG_DIR}/enabled_plugins ]; then cp ${RABBITMQ_CONFIG_DIR}/enabled_plugins $CONF_DIR/rabbitmq fi - if [ -d "${RABBITMQ_CONFIG_DIR}/certs" ]; then + if [ -d "${RABBITMQ_CONFIG_DIR}/certs" ]; then cp -r ${RABBITMQ_CONFIG_DIR}/certs $CONF_DIR/rabbitmq fi if [ -d ${RABBITMQ_CONFIG_DIR}/imports ]; then diff --git a/selenium/bin/components/selenium b/selenium/bin/components/selenium index 2563927b4fb9..ad8960960c8b 100644 --- a/selenium/bin/components/selenium +++ b/selenium/bin/components/selenium @@ -1,11 +1,8 @@ #!/usr/bin/env bash -arch=$(uname -a) -if [[ $arch == arm* ]]; then - SELENIUM_DOCKER_IMAGE=selenium/standalone-chrome:123.0 -else - SELENIUM_DOCKER_IMAGE=seleniarm/standalone-chromium:123.0 -fi +# selenium/standalone-chromium is multi-arch +# https://hub.docker.com/r/selenium/standalone-chromium/tags +SELENIUM_DOCKER_IMAGE=${SELENIUM_DOCKER_IMAGE:-selenium/standalone-chromium:133.0} start_selenium() { begin "Starting selenium ..." diff --git a/selenium/bin/suite_template b/selenium/bin/suite_template index fbccd71b952a..de820ef9dabb 100644 --- a/selenium/bin/suite_template +++ b/selenium/bin/suite_template @@ -31,7 +31,7 @@ SELENIUM_ROOT_FOLDER=$(find_selenium_dir $SCRIPT) TEST_DIR=$SELENIUM_ROOT_FOLDER/test BIN_DIR=$SELENIUM_ROOT_FOLDER/bin SCREENS=${SELENIUM_ROOT_FOLDER}/screens/${SUITE} -CONF_DIR=/tmp/selenium/${SUITE} +CONF_DIR=${CONF_DIR_PREFIX:-/tmp}/selenium/${SUITE} LOGS=${CONF_DIR}/logs ENV_FILE=$CONF_DIR/.env