From 87802379809d63d74ed64fb37a1f80c351da87ff Mon Sep 17 00:00:00 2001 From: Viet Nguyen Duc Date: Thu, 19 Dec 2024 03:44:41 +0700 Subject: [PATCH] Docker: set/unset stereotype via env var SE_NODE_BROWSER_VERSION and SE_BROWSER_BINARY_LOCATION Signed-off-by: Viet Nguyen Duc --- NodeBase/Dockerfile | 1 + NodeBase/generate_config | 8 ++++---- Standalone/generate_config | 14 ++++++++++---- tests/docker-compose-v3-test-parallel.yml | 3 +++ tests/docker-compose-v3-test-standalone.yml | 1 + 5 files changed, 19 insertions(+), 8 deletions(-) diff --git a/NodeBase/Dockerfile b/NodeBase/Dockerfile index 9691e13f1..0634af46f 100644 --- a/NodeBase/Dockerfile +++ b/NodeBase/Dockerfile @@ -47,6 +47,7 @@ ENV LANG_WHICH=${LANG_WHICH} \ SE_OTEL_SERVICE_NAME="selenium-node" \ # Setting Selenium Manager to work offline SE_OFFLINE=true \ + SE_NODE_BROWSER_VERSION="stable" \ #============================ # Some configuration options #============================ diff --git a/NodeBase/generate_config b/NodeBase/generate_config index c296c085d..8aa231dec 100755 --- a/NodeBase/generate_config +++ b/NodeBase/generate_config @@ -55,16 +55,16 @@ echo "max-sessions = ${SE_NODE_MAX_CONCURRENCY:-${SE_NODE_MAX_SESSIONS}} if [ -f /opt/selenium/browser_name ]; then SE_NODE_BROWSER_NAME=$(cat /opt/selenium/browser_name) fi -if [ -f /opt/selenium/browser_version ]; then +if [ -f /opt/selenium/browser_version ] && [ "${SE_NODE_BROWSER_VERSION}" = "stable" ]; then SE_NODE_BROWSER_VERSION=$(short_version $(cat /opt/selenium/browser_version)) fi -if [ -f /opt/selenium/browser_binary_location ]; then - SE__BROWSER_BINARY_LOCATION=$(cat /opt/selenium/browser_binary_location) +if [ -f /opt/selenium/browser_binary_location ] && [ -z "${SE_BROWSER_BINARY_LOCATION}" ]; then + SE_BROWSER_BINARY_LOCATION=$(cat /opt/selenium/browser_binary_location) fi # 'browserName' is mandatory for default stereotype if [[ -z "${SE_NODE_STEREOTYPE}" ]] && [[ -n "${SE_NODE_BROWSER_NAME}" ]]; then - SE_NODE_STEREOTYPE="{\"browserName\": \"${SE_NODE_BROWSER_NAME}\", \"browserVersion\": \"${SE_NODE_BROWSER_VERSION}\", \"platformName\": \"Linux\", ${SE__BROWSER_BINARY_LOCATION}, \"se:containerName\": \"${SE_NODE_CONTAINER_NAME}\"}" + SE_NODE_STEREOTYPE="{\"browserName\": \"${SE_NODE_BROWSER_NAME}\", \"browserVersion\": \"${SE_NODE_BROWSER_VERSION}\", \"platformName\": \"Linux\", ${SE_BROWSER_BINARY_LOCATION}, \"se:containerName\": \"${SE_NODE_CONTAINER_NAME}\"}" else SE_NODE_STEREOTYPE="${SE_NODE_STEREOTYPE}" fi diff --git a/Standalone/generate_config b/Standalone/generate_config index b42154dcc..84aeb3715 100755 --- a/Standalone/generate_config +++ b/Standalone/generate_config @@ -32,12 +32,18 @@ echo "drain-after-session-count = ${DRAIN_AFTER_SESSION_COUNT:-$SE_DRAIN_AFTER_S echo "max-sessions = ${SE_NODE_MAX_SESSIONS} " >>"$FILENAME" -SE_NODE_BROWSER_NAME=$(cat /opt/selenium/browser_name) -SE_NODE_BROWSER_VERSION=$(short_version $(cat /opt/selenium/browser_version)) -SE__BROWSER_BINARY_LOCATION=$(cat /opt/selenium/browser_binary_location) +if [ -f /opt/selenium/browser_name ]; then + SE_NODE_BROWSER_NAME=$(cat /opt/selenium/browser_name) +fi +if [ -f /opt/selenium/browser_version ] && [ "${SE_NODE_BROWSER_VERSION}" = "stable" ]; then + SE_NODE_BROWSER_VERSION=$(short_version $(cat /opt/selenium/browser_version)) +fi +if [ -f /opt/selenium/browser_binary_location ] && [ -z "${SE_BROWSER_BINARY_LOCATION}" ]; then + SE_BROWSER_BINARY_LOCATION=$(cat /opt/selenium/browser_binary_location) +fi if [[ -z "$SE_NODE_STEREOTYPE" ]]; then - SE_NODE_STEREOTYPE="{\"browserName\": \"${SE_NODE_BROWSER_NAME}\", \"browserVersion\": \"${SE_NODE_BROWSER_VERSION}\", \"platformName\": \"Linux\", ${SE__BROWSER_BINARY_LOCATION}, \"se:containerName\": \"${SE_NODE_CONTAINER_NAME}\"}" + SE_NODE_STEREOTYPE="{\"browserName\": \"${SE_NODE_BROWSER_NAME}\", \"browserVersion\": \"${SE_NODE_BROWSER_VERSION}\", \"platformName\": \"Linux\", ${SE_BROWSER_BINARY_LOCATION}, \"se:containerName\": \"${SE_NODE_CONTAINER_NAME}\"}" else SE_NODE_STEREOTYPE="$SE_NODE_STEREOTYPE" fi diff --git a/tests/docker-compose-v3-test-parallel.yml b/tests/docker-compose-v3-test-parallel.yml index 77f016d6e..7ad41168b 100644 --- a/tests/docker-compose-v3-test-parallel.yml +++ b/tests/docker-compose-v3-test-parallel.yml @@ -18,6 +18,7 @@ services: - ./videos/certs:/opt/selenium/secrets - ./videos:/videos environment: + - SE_NODE_BROWSER_VERSION= - SE_ENABLE_TRACING=false - SE_EVENT_BUS_HOST=selenium-hub - SE_EVENT_BUS_PUBLISH_PORT=4442 @@ -53,6 +54,7 @@ services: - ./videos/certs:/opt/selenium/secrets - ./videos:/videos environment: + - SE_NODE_BROWSER_VERSION= - SE_ENABLE_TRACING=false - SE_EVENT_BUS_HOST=selenium-hub - SE_EVENT_BUS_PUBLISH_PORT=4442 @@ -84,6 +86,7 @@ services: volumes: - ./videos/certs:/opt/selenium/secrets environment: + - SE_NODE_BROWSER_VERSION= - SE_ENABLE_TRACING=false - SE_EVENT_BUS_HOST=selenium-hub - SE_EVENT_BUS_PUBLISH_PORT=4442 diff --git a/tests/docker-compose-v3-test-standalone.yml b/tests/docker-compose-v3-test-standalone.yml index ad02514d0..f61c120b4 100644 --- a/tests/docker-compose-v3-test-standalone.yml +++ b/tests/docker-compose-v3-test-standalone.yml @@ -12,6 +12,7 @@ services: depends_on: - browser_video environment: + - SE_NODE_BROWSER_VERSION= - SE_ENABLE_TRACING=false - SE_NODE_MAX_SESSIONS=1 - SE_NODE_OVERRIDE_MAX_SESSIONS=true