diff --git a/Makefile b/Makefile index c3f66a0a7e..23391dedda 100644 --- a/Makefile +++ b/Makefile @@ -26,14 +26,14 @@ CURRENT_PLATFORM := $(shell if [ `arch` = "aarch64" ] || [ `arch` = "arm64" ]; t PLATFORMS := $(or $(PLATFORMS),$(shell echo $$PLATFORMS),$(CURRENT_PLATFORM)) SEL_PASSWD := $(or $(SEL_PASSWD),$(SEL_PASSWD),secret) CHROMIUM_VERSION := $(or $(CHROMIUM_VERSION),$(CHROMIUM_VERSION),latest) -FIREFOX_DOWNLOAD_URL := $(or $(FIREFOX_DOWNLOAD_URL),$(FIREFOX_DOWNLOAD_URL),https://download-installer.cdn.mozilla.net/pub/firefox/nightly/2024/10/2024-10-28-09-56-35-mozilla-central/firefox-133.0a1.en-US.linux-aarch64.deb) +FIREFOX_DOWNLOAD_URL := $(or $(FIREFOX_DOWNLOAD_URL),$(FIREFOX_DOWNLOAD_URL),https://download-installer.cdn.mozilla.net/pub/firefox/nightly/2024/11/2024-11-25-09-40-45-mozilla-central/firefox-134.0a1.en-US.linux-aarch64.deb) SBOM_OUTPUT := $(or $(SBOM_OUTPUT),$(SBOM_OUTPUT),package_versions.txt) KEDA_TAG_PREV_VERSION := $(or $(KEDA_TAG_PREV_VERSION),$(KEDA_TAG_PREV_VERSION),2.16.1-selenium-grid) KEDA_CORE_VERSION := $(or $(KEDA_CORE_VERSION),$(KEDA_CORE_VERSION),2.16.1) KEDA_TAG_VERSION := $(or $(KEDA_TAG_VERSION),$(KEDA_TAG_VERSION),2.16.1-selenium-grid) KEDA_BASED_NAME := $(or $(KEDA_BASED_NAME),$(KEDA_BASED_NAME),ndviet) -KEDA_BASED_TAG := $(or $(KEDA_BASED_TAG),$(KEDA_BASED_TAG),2.16.1-selenium-grid-20241224) -TEST_PATCHED_KEDA := $(or $(TEST_PATCHED_KEDA),$(TEST_PATCHED_KEDA),false) +KEDA_BASED_TAG := $(or $(KEDA_BASED_TAG),$(KEDA_BASED_TAG),2.16.1-selenium-grid-20250108) +TEST_PATCHED_KEDA := $(or $(TEST_PATCHED_KEDA),$(TEST_PATCHED_KEDA),true) all: hub \ distributor \ diff --git a/charts/selenium-grid/multiple-nodes-platform.yaml b/charts/selenium-grid/multiple-nodes-platform.yaml index 4cd77d84fa..1819d8b428 100644 --- a/charts/selenium-grid/multiple-nodes-platform.yaml +++ b/charts/selenium-grid/multiple-nodes-platform.yaml @@ -19,6 +19,10 @@ crossBrowsers: hpa: platformName: 'Linux' browserVersion: '' + - nameOverride: '{{ $.Release.Name }}-node-chrome-platform-windows' + hpa: + platformName: 'windows' + browserVersion: '' firefoxNode: - nameOverride: '{{ $.Release.Name }}-node-firefox-platform-any' hpa: @@ -28,6 +32,10 @@ crossBrowsers: hpa: platformName: 'Linux' browserVersion: '' + - nameOverride: '{{ $.Release.Name }}-node-firefox-platform-windows' + hpa: + platformName: 'windows' + browserVersion: '' edgeNode: - nameOverride: '{{ $.Release.Name }}-node-edge-platform-any' hpa: @@ -37,3 +45,7 @@ crossBrowsers: hpa: platformName: 'Linux' browserVersion: '' + - nameOverride: '{{ $.Release.Name }}-node-edge-platform-windows' + hpa: + platformName: 'windows' + browserVersion: '' diff --git a/tests/SeleniumTests/__init__.py b/tests/SeleniumTests/__init__.py index 61ca39c7bf..02ff80981f 100644 --- a/tests/SeleniumTests/__init__.py +++ b/tests/SeleniumTests/__init__.py @@ -36,7 +36,7 @@ TEST_MULTIPLE_VERSIONS_EXPLICIT = os.environ.get('TEST_MULTIPLE_VERSIONS_EXPLICIT', 'true').lower() == 'true' LIST_CHROMIUM_VERSIONS = ['130.0', '129.0', '128.0'] LIST_FIREFOX_VERSIONS = ['132.0', '131.0', '130.0', '129.0', '128.0'] -LIST_PLATFORMS = ['Linux', None] +LIST_PLATFORMS = ['Linux', None, 'Windows'] if not TEST_MULTIPLE_VERSIONS_EXPLICIT: LIST_CHROMIUM_VERSIONS.append(None) @@ -169,7 +169,7 @@ def setUp(self): browser_version = random.choice(LIST_CHROMIUM_VERSIONS) if browser_version: options.set_capability('browserVersion', browser_version) - options.set_capability('platformName', 'Linux') + options.set_capability('platformName', LIST_PLATFORMS[0]) if TEST_NODE_RELAY == 'Android': options.set_capability('platformName', TEST_NODE_RELAY) options.set_capability('appium:platformVersion', TEST_ANDROID_PLATFORM_API) @@ -218,7 +218,7 @@ def setUp(self): browser_version = random.choice(LIST_CHROMIUM_VERSIONS) if browser_version: options.set_capability('browserVersion', browser_version) - options.set_capability('platformName', 'Linux') + options.set_capability('platformName', LIST_PLATFORMS[0]) if TEST_MULTIPLE_PLATFORMS: platform_name = random.choice(LIST_PLATFORMS) if platform_name: @@ -261,7 +261,7 @@ def setUp(self): browser_version = random.choice(LIST_FIREFOX_VERSIONS) if browser_version: options.set_capability('browserVersion', browser_version) - options.set_capability('platformName', 'Linux') + options.set_capability('platformName', LIST_PLATFORMS[0]) if TEST_MULTIPLE_PLATFORMS: platform_name = random.choice(LIST_PLATFORMS) if platform_name: diff --git a/tests/charts/ci/local-pvc.yaml b/tests/charts/ci/local-pvc.yaml index 40b5826f17..3b80c0b7c6 100644 --- a/tests/charts/ci/local-pvc.yaml +++ b/tests/charts/ci/local-pvc.yaml @@ -1,38 +1,3 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: ftp-server - namespace: ${SELENIUM_NAMESPACE} -spec: - replicas: 1 - selector: - matchLabels: - app: ftp-server - template: - metadata: - labels: - app: ftp-server - spec: - containers: - - name: ftp-server - image: delfer/alpine-ftp-server:latest - env: - - name: USERS - value: "seluser|selenium.dev" - - name: MAX_PORT - value: "21005" - - name: TINI_SUBREAPER - value: "true" - volumeMounts: - - mountPath: /ftp/seluser - name: ftp-upload - subPath: seluser - command: ["/bin/sh", "-c", "/sbin/tini -- /bin/start_vsftpd.sh && tail -f /dev/null"] - volumes: - - name: ftp-upload - persistentVolumeClaim: - claimName: ${TEST_PV_CLAIM_NAME} ---- apiVersion: v1 kind: Service metadata: @@ -73,6 +38,41 @@ spec: port: 21005 targetPort: 21005 --- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: ftp-server + namespace: ${SELENIUM_NAMESPACE} +spec: + replicas: 1 + selector: + matchLabels: + app: ftp-server + template: + metadata: + labels: + app: ftp-server + spec: + containers: + - name: ftp-server + image: delfer/alpine-ftp-server:latest + env: + - name: USERS + value: "seluser|selenium.dev" + - name: MAX_PORT + value: "21005" + - name: TINI_SUBREAPER + value: "true" + volumeMounts: + - mountPath: /ftp/seluser + name: ftp-upload + subPath: seluser + command: ["/bin/sh", "-c", "/sbin/tini -- /bin/start_vsftpd.sh && tail -f /dev/null"] + volumes: + - name: ftp-upload + persistentVolumeClaim: + claimName: ${TEST_PV_CLAIM_NAME} +--- apiVersion: v1 kind: PersistentVolumeClaim metadata: @@ -105,5 +105,5 @@ spec: hostPath: path: "${HOST_PATH}" type: DirectoryOrCreate - persistentVolumeReclaimPolicy: Retain + persistentVolumeReclaimPolicy: Delete storageClassName: "standard" diff --git a/tests/charts/make/chart_test.sh b/tests/charts/make/chart_test.sh index 57a53bf9a8..dcc24e4828 100755 --- a/tests/charts/make/chart_test.sh +++ b/tests/charts/make/chart_test.sh @@ -151,7 +151,7 @@ if [ "${TEST_UPGRADE_CHART}" != "true" ] && [ "${RENDER_HELM_TEMPLATE_ONLY}" != LOCAL_PVC_YAML="${TEST_VALUES_PATH}/local-pvc.yaml" envsubst < ${LOCAL_PVC_YAML} > ./tests/tests/local-pvc.yaml LOCAL_PVC_YAML=./tests/tests/local-pvc.yaml - kubectl delete -n ${SELENIUM_NAMESPACE} -f ${LOCAL_PVC_YAML} --ignore-not-found=true +# kubectl delete -n ${SELENIUM_NAMESPACE} -f ${LOCAL_PVC_YAML} --ignore-not-found=true sudo rm -rf ${HOST_PATH}; sudo mkdir -p ${HOST_PATH}/logs sudo chmod -R 777 ${HOST_PATH} kubectl create ns ${SELENIUM_NAMESPACE} || true