Skip to content
This repository has been archived by the owner on Jun 22, 2024. It is now read-only.

[🐛 Bug]: Docker build cannot build the latest node-chromium #69

Closed
minorling opened this issue Mar 26, 2024 · 2 comments
Closed

[🐛 Bug]: Docker build cannot build the latest node-chromium #69

minorling opened this issue Mar 26, 2024 · 2 comments
Labels
bug Something isn't working

Comments

@minorling
Copy link

What happened?

Use the dockerfile provided in https://github.com/seleniumhq-community/docker-seleniarm/blob/trunk/NodeChromium/Dockerfile always build the latest version with node-chromium version 121, but it already updte to chrome version 123, please help to update the latest docker file for build the latest version of node-chromium.

Command used to start Selenium Grid with Docker (or Kubernetes)

https://github.com/seleniumhq-community/docker-seleniarm/blob/trunk/NodeChromium/Dockerfile

Relevant log output

[+] Building 44.3s (13/13) FINISHED                        docker:desktop-linux
 => [internal] load build definition from Dockerfile.txt                   0.0s
 => => transferring dockerfile: 2.06kB                                     0.0s
 => [internal] load .dockerignore                                          0.0s
 => => transferring context: 2B                                            0.0s
 => [internal] load metadata for docker.io/seleniarm/node-base:4.1.4-2022  2.1s
 => [auth] seleniarm/node-base:pull token for registry-1.docker.io         0.0s
 => CACHED [1/7] FROM docker.io/seleniarm/node-base:4.1.4-20220429@sha256  0.0s
 => [internal] load build context                                          0.0s
 => => transferring context: 510B                                          0.0s
 => [2/7] RUN echo "deb http://deb.debian.org/debian/ stable main" >> /e  34.8s
 => [3/7] COPY wrap_chromium_binary /opt/bin/wrap_chromium_binary          0.0s
 => [4/7] RUN chmod +x /opt/bin/wrap_chromium_binary                       0.3s
 => [5/7] RUN /opt/bin/wrap_chromium_binary                                0.3s 
 => [6/7] RUN apt-get update -qqy   && apt-get -qqy install chromium-driv  5.4s 
 => [7/7] RUN echo "chromium" > /opt/selenium/browser_name                 0.1s 
 => exporting to image                                                     1.4s 
 => => exporting layers                                                    1.4s 
 => => writing image sha256:3cbda048e08573f89cd56fcad446876ef89aee082e726  0.0s 
 => => naming to docker.io/library/node-chromium:latest_0326_new

Operating System

mac studio M2

Docker Selenium version (image tag)

4.17.0

Selenium Grid chart version (chart version)

No response

@minorling minorling added the bug Something isn't working label Mar 26, 2024
@VietND96
Copy link
Member

@minorling, looks like it is due to Debian repo. I just tried to update it.

docker run --entrypoint="" docker.io/selenium/node-chromium:4.18.1-20240327 bash  chromium --version
Chromium 123.0.6312.58 built on Debian trixie/sid, running on Debian 12.5

Copy link

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

@github-actions github-actions bot locked and limited conversation to collaborators Apr 27, 2024
VietND96 added a commit to SeleniumHQ/docker-selenium that referenced this issue May 14, 2024
* add CircleCI status badge

* Update README

* Adding the code to add all of the browser tags and update the latest tag

* 4.1.4

* Bumping grid to 4.1.4 and updating Firefox to v99.0-1

* [deploy] 4.1.4 and Firefox 99.0-1 with browser tags and update latest tag

* Updated README and [deploy] grid 4.1.4 and Firefox 99.0

* Attempts to tag multi-arch images by modifying the manifest

* Added the functionality to add browser versions to the Docker Hub tags. Also, updated the 'latest' tag.

* Allow passing an environment variable GRID_STATUS_MAX_ATTEMPTS to override the default 3 attempts to a differen value. Useful for testing under emulation where things are slower.

* Updated Firefox to 100.0.2-1

* [deploy] Firefox 100.0.2-1 and Selenium 4.2.1

* Fixing bug in variable name causing browser tagging with browser version and webdriver and selenium versions to fail.

* Fixed merge conflict from earlier

* [deploy] 4.2.2 seleniarm images

* Automating the process of modifying the selenium grid tag since I keep forgetting to do it when deploying.

* run the deploy workflow without deploying

* Using  instead of backticks

* Cleanup config.yml

* Debugging why it deployed as 4.1.0...

* test [deploy]

* test [deploy] and outputting some debug info

* test [deploy] and outputting some debug info

* test [deploy] is BRANCH a reserved keyword?

* test [deploy] is BRANCH a reserved keyword?

* More tests [deploy]

* debug [deploy]

* debug [deploy]

* Clean up and [deploy] test

* test [deploy] to test account to check tags

* Resolved issue with BRANCH environment variable not being set properly so it can be reused from step to step.

* [deploy] 4.3.0

* [deploy] 4.3.0 again since it failed

* small addition to readme to confirm graviton compatibility

* [deploy] 4.3.0 updates

* [deploy] 4.4.0

* [deploy] update

* update Firefox version

* [deploy] 4.4.0 with Firefox 104.0-1

* Update Makefile

* Add node and standalone docker build

* Fix tabs. Also, replace hard-coded platforms with variable, since we build and test separately but then build and deploy together.

* Bump Firefox to 105.0.1-1

* [deploy] Selenium 4.5.0 and Firefox 105.0.1-1

* Fix race condition when launching websockify.

Summary of issue #18: noVNC's launch.sh invokes `ps`. Without it, it exits
prematurely, thus ruining websockify's stdout and stderr file descriptors.
Depending on how fast websockify starts up, this may or may not prevent it from
working.

* CircleCI: prevent '/' characters in Docker tags.

This fixes #21.

* [deploy] fixes for #18 and #21

* Removing obsolete and not supported shell scripts. Updating docs with the supported method for building the ARM images locally.

* README.md formatting change

* Removed retag-latest-images-as-today obsolete script.

* Renamed NodeFirefox/Dockerfile.arm64 to NodeFirefox/Dockerfile.multi-arch to reflect the nature of building for multiple architectures, not just arm64. Updated Makefile with new Dockerfile,multi-arch name. Removed obsolete generation and build scripts, outdated experimental Ubuntu Dockerfile, and updated documentation to move how to start containers towards the top.

* Make more clear Chrome isn't build for ARM 'on Linux'

* Bump geckodriver to 0.32.0. Replace jamesmortensen/geckodriver-arm-binaries with official mozilla/geckodriver repo for arm64. Fixes #22

* [deploy] with upstream changes and official Mozilla geckodriver arm64 v0.32.0

* [deploy] 4.5.2 with Java 11 HTTP client

* [deploy] 4.5.3

* [deploy] merge from upstream and deploy 4.6.0

* Modified the telemetry installation commands so that the coursiers launcher pulled the binary based on arch, and only for the supported ones arm64 and x86_64

* [deploy] 4.6.0

* Update Firefox to v107

* [deploy] 4.7.0

* [deploy] 4.7.1

* Publish plain version numbers (e.g.: 4.6.0, 4.6, 4)

* [deploy] using the native coursier binaries, since the JAR version takes too long and causes the build to exceed the timeout

* [deploy] with jaegar observability jars only for aarch64 since it causes the deployment to timeout for other architectures.

* Upgrade to Firefox 108.0-2 for all architectures

* Test [deploy]. Add the grid components to the deploy step, and split up building images into different, parallel jobs to reduce build time.

* Test [deploy]. Add the grid components to the deploy step, and split up building images into different, parallel jobs to reduce build time.

* [deploy] fix job names

* test [deploy] debug some broken build processes.

* [deploy] Avoid make and run all build commands brom build-and-push.sh

* [deploy] 4.7.2 with Firefox 108

* [deploy] testing using an exit code in case a command in the script fails

* [deploy]

* Change bash to sh

* [deploy] test

* [deploy] testing to see why building base behaves differently with make vs running via a script

* [deploy] re-register binfmt and qemu for each runner

* [deploy] testing tagging and release notes job after fixing env var dereferencing

* [deploy] testing tagging and release notes job after fixing env var dereferencing

* [deploy] try using one of the parameters passed in declaratively instead.

* [deploy] try with the job name and also log it for the base job as well

* [deploy] using the make targets parameter.

* [deploy] using the make targets parameter.

* [deploy] test

* [deploy] test

* test [deploy] Added scripts and logic to add the Major_minor tags to the non-browser images, and added logic to add all of the tags to the release notes.

* Changed file permissions so shell script can be executed.

* Test [deploy] Remove comment

* Test [deploy] Adding NAMESPACE variable to the docker-pull-related-tags script.

* Test [deploy] and retag the images with related tags instead of excessive pulling.

* Test [deploy]. Rename docker-pull-related-tags to docker-add-related-tags. Clean up the names of the steps in the release notes generation step. Reorder the MAJOR, MAJOR-MINOR, and VERSION tags for the browser images so the order in Docker Hub matches their upstream siblings. Temporarily disable building images to focus on the release notes generation step.

* Test [deploy] forgot a tag

* Test [deploy] need to set build date to date of prev deployed images in order to test the final job

* test [deploy] removed commented test code

* Test [deploy] to see the full flow.

* test [deploy] after merge from trunk and upstream

* Test [deploy]

* Test [deploy]

* Fix ordering of the grid images

* Change everything back to the production 'seleniarm' Docker credentials and namespace.

* [deploy] 4.8.0 with upgrade Firefox to 109 and full grid.

* If we're getting release notes, pull from docker anonymously

* [deploy] with 0.32.1 geckodriver

* [deploy] Need to be logged into Docker Hub in order to push tags but not for release notes portion.

* [deploy] 4.8.0 with latest noVNC and websockify

* Upgrade to Firefox 109 and geckodriver 0.32.2

* [deploy] 4.8.1 and geckodriver 0.32.2

* [deploy] with updates to use buildx imagetools instead of docker manifest to add tags to multi-arch images

* [deploy] with 'chomium' typo fix.

* [deploy] updates from upstream

* Updated multi-arch Firefox to 111.0.1-1.

* [deploy] 4.8.2

* [deploy] 4.8.2 with Firefox rollback to v109.

* [deploy] 4.8.2

* [deploy] 4.8.3. Updated build-and-push.sh script to use default Selenium version from the Base/Dockerfile so environment variable is only needed if we want the tag version to be something else.

* Update Firefox to v112.0-1

* [deploy] 4.9.0

* Adding some delays between building images that are dependent on each other to avoid 'failed to solve' errors

* For build errors, we'll retry them 5 times before giving up

* Updating the README docs to reflect the state of building the grid components.

* [deploy] 4.9.1

* debian:latest is now bookworm, and openjdk-11-jre-headless is missing. So we pin to debian:bullseye

* Bump Firefox to 114.0-1 and geckodriver to 0.33.0

* [deploy] Selenium 4.10, Firefox 114,0-1 geckodriver 0.33.0

* Update CircleCI config to deploy grid from trunk

* Updated Firefox to 116.0-2

* Downgrade Selenium to 4.10 with updated browsers and drivers

* [deploy] updated browsers with Selenium 4.10.0

* Merge from upstream to add Selenium Manager SE_OFFLINE environment variable. Upgrade to Selenium 4.11.0

* update python selenium module to latest. Update Firefox

* [deploy] latest browsers for Selenium 4.10.0

* [deploy] 4.10.0 redeploy

* Fix build scripts so the RELEASE variable is used.

* Fix Makefile - add BASE_RELEASE and BASE_VERSION to the base_multi action

* Adding locale to Chromium dockerfile.

* Handle usrmerge issues https://wiki.debian.org/UsrMerge

* Just install usrmerge

* Try chromium without usrmerge. Upgrade Firefox to 120

* Add usrmerge to NodeChromium after setting sources. Split Firefox install into 2 runs for easier debugging

* [deploy] test with debian bookworm update - was missing the browser_version and browser_binary_location from upstream. Java package openjdk no longer available in bookworm so replaced with temurin

Co-authored-by: Fried Hoeben <[email protected]>

* [deploy] test

* [deploy] test from tmp

* [deploy] fixed tests

* Fixed tests by waiting for downloadable files to exist in array, fixes Chromium tests.

Co-authored-by: Fried Hoeben <[email protected]>

* Prepare release for 4.16.1

* [deploy] 4.16.1

* test(chart) against build multi

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Sync update from upstream

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Adding script used to build the multi-arch images, but locally using only one architecture.

* Fixed issue where xauth not found, preventing xvfb from starting.

* CI chart tests against amd64 only

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Skip NodeChromium in Dockerfile scan

Signed-off-by: Viet Nguyen Duc <[email protected]>

* [deploy] v4.17.0

* [build] Update deploy workflow

Signed-off-by: Viet Nguyen Duc <[email protected]>

* [deploy] v4.17.0

* [deploy] v4.17.0

Signed-off-by: Viet Nguyen Duc <[email protected]>

* [deploy] 4.17.0 - Fix bug in auto-retry logic where if build fails 5 times it needs to also return exit 1 to not let CI think it succeeded.

* Sync with upstream

* [deploy] 4.18.0

* [deploy] tag image name 4.18.0

* Release v4.18.1 [deploy]

Signed-off-by: Viet Nguyen Duc <[email protected]>

* [deploy] fix broken link to download Firefox v124

Update Dockerfile.multi-arch

* update: Debian repo is used in NodeChromium

Fixed seleniumhq-community#69

* Temporary disable arch linux/arm/v7 due to NodeFirefox build failed [deploy]

Signed-off-by: Viet Nguyen Duc <[email protected]>

* .circleci fetch selenium version from Makefile

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Add back platform linux/arm/v7

This reverts commit d16ae9e.

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Update .circleci [deploy]

Signed-off-by: Viet Nguyen Duc <[email protected]>

---------

Signed-off-by: Viet Nguyen Duc <[email protected]>
Co-authored-by: James Mortensen <[email protected]>
Co-authored-by: Peter Triesz <[email protected]>
Co-authored-by: Xavier G <[email protected]>
Co-authored-by: DJ Gregor <[email protected]>
Co-authored-by: Fried Hoeben <[email protected]>
VietND96 added a commit to NDViet/docker-selenium that referenced this issue May 17, 2024
…2257)

* add CircleCI status badge

* Update README

* Adding the code to add all of the browser tags and update the latest tag

* 4.1.4

* Bumping grid to 4.1.4 and updating Firefox to v99.0-1

* [deploy] 4.1.4 and Firefox 99.0-1 with browser tags and update latest tag

* Updated README and [deploy] grid 4.1.4 and Firefox 99.0

* Attempts to tag multi-arch images by modifying the manifest

* Added the functionality to add browser versions to the Docker Hub tags. Also, updated the 'latest' tag.

* Allow passing an environment variable GRID_STATUS_MAX_ATTEMPTS to override the default 3 attempts to a differen value. Useful for testing under emulation where things are slower.

* Updated Firefox to 100.0.2-1

* [deploy] Firefox 100.0.2-1 and Selenium 4.2.1

* Fixing bug in variable name causing browser tagging with browser version and webdriver and selenium versions to fail.

* Fixed merge conflict from earlier

* [deploy] 4.2.2 seleniarm images

* Automating the process of modifying the selenium grid tag since I keep forgetting to do it when deploying.

* run the deploy workflow without deploying

* Using  instead of backticks

* Cleanup config.yml

* Debugging why it deployed as 4.1.0...

* test [deploy]

* test [deploy] and outputting some debug info

* test [deploy] and outputting some debug info

* test [deploy] is BRANCH a reserved keyword?

* test [deploy] is BRANCH a reserved keyword?

* More tests [deploy]

* debug [deploy]

* debug [deploy]

* Clean up and [deploy] test

* test [deploy] to test account to check tags

* Resolved issue with BRANCH environment variable not being set properly so it can be reused from step to step.

* [deploy] 4.3.0

* [deploy] 4.3.0 again since it failed

* small addition to readme to confirm graviton compatibility

* [deploy] 4.3.0 updates

* [deploy] 4.4.0

* [deploy] update

* update Firefox version

* [deploy] 4.4.0 with Firefox 104.0-1

* Update Makefile

* Add node and standalone docker build

* Fix tabs. Also, replace hard-coded platforms with variable, since we build and test separately but then build and deploy together.

* Bump Firefox to 105.0.1-1

* [deploy] Selenium 4.5.0 and Firefox 105.0.1-1

* Fix race condition when launching websockify.

Summary of issue #18: noVNC's launch.sh invokes `ps`. Without it, it exits
prematurely, thus ruining websockify's stdout and stderr file descriptors.
Depending on how fast websockify starts up, this may or may not prevent it from
working.

* CircleCI: prevent '/' characters in Docker tags.

This fixes #21.

* [deploy] fixes for #18 and #21

* Removing obsolete and not supported shell scripts. Updating docs with the supported method for building the ARM images locally.

* README.md formatting change

* Removed retag-latest-images-as-today obsolete script.

* Renamed NodeFirefox/Dockerfile.arm64 to NodeFirefox/Dockerfile.multi-arch to reflect the nature of building for multiple architectures, not just arm64. Updated Makefile with new Dockerfile,multi-arch name. Removed obsolete generation and build scripts, outdated experimental Ubuntu Dockerfile, and updated documentation to move how to start containers towards the top.

* Make more clear Chrome isn't build for ARM 'on Linux'

* Bump geckodriver to 0.32.0. Replace jamesmortensen/geckodriver-arm-binaries with official mozilla/geckodriver repo for arm64. Fixes #22

* [deploy] with upstream changes and official Mozilla geckodriver arm64 v0.32.0

* [deploy] 4.5.2 with Java 11 HTTP client

* [deploy] 4.5.3

* [deploy] merge from upstream and deploy 4.6.0

* Modified the telemetry installation commands so that the coursiers launcher pulled the binary based on arch, and only for the supported ones arm64 and x86_64

* [deploy] 4.6.0

* Update Firefox to v107

* [deploy] 4.7.0

* [deploy] 4.7.1

* Publish plain version numbers (e.g.: 4.6.0, 4.6, 4)

* [deploy] using the native coursier binaries, since the JAR version takes too long and causes the build to exceed the timeout

* [deploy] with jaegar observability jars only for aarch64 since it causes the deployment to timeout for other architectures.

* Upgrade to Firefox 108.0-2 for all architectures

* Test [deploy]. Add the grid components to the deploy step, and split up building images into different, parallel jobs to reduce build time.

* Test [deploy]. Add the grid components to the deploy step, and split up building images into different, parallel jobs to reduce build time.

* [deploy] fix job names

* test [deploy] debug some broken build processes.

* [deploy] Avoid make and run all build commands brom build-and-push.sh

* [deploy] 4.7.2 with Firefox 108

* [deploy] testing using an exit code in case a command in the script fails

* [deploy]

* Change bash to sh

* [deploy] test

* [deploy] testing to see why building base behaves differently with make vs running via a script

* [deploy] re-register binfmt and qemu for each runner

* [deploy] testing tagging and release notes job after fixing env var dereferencing

* [deploy] testing tagging and release notes job after fixing env var dereferencing

* [deploy] try using one of the parameters passed in declaratively instead.

* [deploy] try with the job name and also log it for the base job as well

* [deploy] using the make targets parameter.

* [deploy] using the make targets parameter.

* [deploy] test

* [deploy] test

* test [deploy] Added scripts and logic to add the Major_minor tags to the non-browser images, and added logic to add all of the tags to the release notes.

* Changed file permissions so shell script can be executed.

* Test [deploy] Remove comment

* Test [deploy] Adding NAMESPACE variable to the docker-pull-related-tags script.

* Test [deploy] and retag the images with related tags instead of excessive pulling.

* Test [deploy]. Rename docker-pull-related-tags to docker-add-related-tags. Clean up the names of the steps in the release notes generation step. Reorder the MAJOR, MAJOR-MINOR, and VERSION tags for the browser images so the order in Docker Hub matches their upstream siblings. Temporarily disable building images to focus on the release notes generation step.

* Test [deploy] forgot a tag

* Test [deploy] need to set build date to date of prev deployed images in order to test the final job

* test [deploy] removed commented test code

* Test [deploy] to see the full flow.

* test [deploy] after merge from trunk and upstream

* Test [deploy]

* Test [deploy]

* Fix ordering of the grid images

* Change everything back to the production 'seleniarm' Docker credentials and namespace.

* [deploy] 4.8.0 with upgrade Firefox to 109 and full grid.

* If we're getting release notes, pull from docker anonymously

* [deploy] with 0.32.1 geckodriver

* [deploy] Need to be logged into Docker Hub in order to push tags but not for release notes portion.

* [deploy] 4.8.0 with latest noVNC and websockify

* Upgrade to Firefox 109 and geckodriver 0.32.2

* [deploy] 4.8.1 and geckodriver 0.32.2

* [deploy] with updates to use buildx imagetools instead of docker manifest to add tags to multi-arch images

* [deploy] with 'chomium' typo fix.

* [deploy] updates from upstream

* Updated multi-arch Firefox to 111.0.1-1.

* [deploy] 4.8.2

* [deploy] 4.8.2 with Firefox rollback to v109.

* [deploy] 4.8.2

* [deploy] 4.8.3. Updated build-and-push.sh script to use default Selenium version from the Base/Dockerfile so environment variable is only needed if we want the tag version to be something else.

* Update Firefox to v112.0-1

* [deploy] 4.9.0

* Adding some delays between building images that are dependent on each other to avoid 'failed to solve' errors

* For build errors, we'll retry them 5 times before giving up

* Updating the README docs to reflect the state of building the grid components.

* [deploy] 4.9.1

* debian:latest is now bookworm, and openjdk-11-jre-headless is missing. So we pin to debian:bullseye

* Bump Firefox to 114.0-1 and geckodriver to 0.33.0

* [deploy] Selenium 4.10, Firefox 114,0-1 geckodriver 0.33.0

* Update CircleCI config to deploy grid from trunk

* Updated Firefox to 116.0-2

* Downgrade Selenium to 4.10 with updated browsers and drivers

* [deploy] updated browsers with Selenium 4.10.0

* Merge from upstream to add Selenium Manager SE_OFFLINE environment variable. Upgrade to Selenium 4.11.0

* update python selenium module to latest. Update Firefox

* [deploy] latest browsers for Selenium 4.10.0

* [deploy] 4.10.0 redeploy

* Fix build scripts so the RELEASE variable is used.

* Fix Makefile - add BASE_RELEASE and BASE_VERSION to the base_multi action

* Adding locale to Chromium dockerfile.

* Handle usrmerge issues https://wiki.debian.org/UsrMerge

* Just install usrmerge

* Try chromium without usrmerge. Upgrade Firefox to 120

* Add usrmerge to NodeChromium after setting sources. Split Firefox install into 2 runs for easier debugging

* [deploy] test with debian bookworm update - was missing the browser_version and browser_binary_location from upstream. Java package openjdk no longer available in bookworm so replaced with temurin

Co-authored-by: Fried Hoeben <[email protected]>

* [deploy] test

* [deploy] test from tmp

* [deploy] fixed tests

* Fixed tests by waiting for downloadable files to exist in array, fixes Chromium tests.

Co-authored-by: Fried Hoeben <[email protected]>

* Prepare release for 4.16.1

* [deploy] 4.16.1

* test(chart) against build multi

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Sync update from upstream

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Adding script used to build the multi-arch images, but locally using only one architecture.

* Fixed issue where xauth not found, preventing xvfb from starting.

* CI chart tests against amd64 only

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Skip NodeChromium in Dockerfile scan

Signed-off-by: Viet Nguyen Duc <[email protected]>

* [deploy] v4.17.0

* [build] Update deploy workflow

Signed-off-by: Viet Nguyen Duc <[email protected]>

* [deploy] v4.17.0

* [deploy] v4.17.0

Signed-off-by: Viet Nguyen Duc <[email protected]>

* [deploy] 4.17.0 - Fix bug in auto-retry logic where if build fails 5 times it needs to also return exit 1 to not let CI think it succeeded.

* Sync with upstream

* [deploy] 4.18.0

* [deploy] tag image name 4.18.0

* Release v4.18.1 [deploy]

Signed-off-by: Viet Nguyen Duc <[email protected]>

* [deploy] fix broken link to download Firefox v124

Update Dockerfile.multi-arch

* update: Debian repo is used in NodeChromium

Fixed seleniumhq-community#69

* Temporary disable arch linux/arm/v7 due to NodeFirefox build failed [deploy]

Signed-off-by: Viet Nguyen Duc <[email protected]>

* .circleci fetch selenium version from Makefile

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Add back platform linux/arm/v7

This reverts commit d16ae9e.

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Update .circleci [deploy]

Signed-off-by: Viet Nguyen Duc <[email protected]>

---------

Signed-off-by: Viet Nguyen Duc <[email protected]>
Co-authored-by: James Mortensen <[email protected]>
Co-authored-by: Peter Triesz <[email protected]>
Co-authored-by: Xavier G <[email protected]>
Co-authored-by: DJ Gregor <[email protected]>
Co-authored-by: Fried Hoeben <[email protected]>
VietND96 added a commit to SeleniumHQ/docker-selenium that referenced this issue May 21, 2024
* add CircleCI status badge

* Update README

* Adding the code to add all of the browser tags and update the latest tag

* 4.1.4

* Bumping grid to 4.1.4 and updating Firefox to v99.0-1

* [deploy] 4.1.4 and Firefox 99.0-1 with browser tags and update latest tag

* Updated README and [deploy] grid 4.1.4 and Firefox 99.0

* Attempts to tag multi-arch images by modifying the manifest

* Added the functionality to add browser versions to the Docker Hub tags. Also, updated the 'latest' tag.

* Allow passing an environment variable GRID_STATUS_MAX_ATTEMPTS to override the default 3 attempts to a differen value. Useful for testing under emulation where things are slower.

* Updated Firefox to 100.0.2-1

* [deploy] Firefox 100.0.2-1 and Selenium 4.2.1

* Fixing bug in variable name causing browser tagging with browser version and webdriver and selenium versions to fail.

* Fixed merge conflict from earlier

* [deploy] 4.2.2 seleniarm images

* Automating the process of modifying the selenium grid tag since I keep forgetting to do it when deploying.

* run the deploy workflow without deploying

* Using  instead of backticks

* Cleanup config.yml

* Debugging why it deployed as 4.1.0...

* test [deploy]

* test [deploy] and outputting some debug info

* test [deploy] and outputting some debug info

* test [deploy] is BRANCH a reserved keyword?

* test [deploy] is BRANCH a reserved keyword?

* More tests [deploy]

* debug [deploy]

* debug [deploy]

* Clean up and [deploy] test

* test [deploy] to test account to check tags

* Resolved issue with BRANCH environment variable not being set properly so it can be reused from step to step.

* [deploy] 4.3.0

* [deploy] 4.3.0 again since it failed

* small addition to readme to confirm graviton compatibility

* [deploy] 4.3.0 updates

* [deploy] 4.4.0

* [deploy] update

* update Firefox version

* [deploy] 4.4.0 with Firefox 104.0-1

* Update Makefile

* Add node and standalone docker build

* Fix tabs. Also, replace hard-coded platforms with variable, since we build and test separately but then build and deploy together.

* Bump Firefox to 105.0.1-1

* [deploy] Selenium 4.5.0 and Firefox 105.0.1-1

* Fix race condition when launching websockify.

Summary of issue #18: noVNC's launch.sh invokes `ps`. Without it, it exits
prematurely, thus ruining websockify's stdout and stderr file descriptors.
Depending on how fast websockify starts up, this may or may not prevent it from
working.

* CircleCI: prevent '/' characters in Docker tags.

This fixes #21.

* [deploy] fixes for #18 and #21

* Removing obsolete and not supported shell scripts. Updating docs with the supported method for building the ARM images locally.

* README.md formatting change

* Removed retag-latest-images-as-today obsolete script.

* Renamed NodeFirefox/Dockerfile.arm64 to NodeFirefox/Dockerfile.multi-arch to reflect the nature of building for multiple architectures, not just arm64. Updated Makefile with new Dockerfile,multi-arch name. Removed obsolete generation and build scripts, outdated experimental Ubuntu Dockerfile, and updated documentation to move how to start containers towards the top.

* Make more clear Chrome isn't build for ARM 'on Linux'

* Bump geckodriver to 0.32.0. Replace jamesmortensen/geckodriver-arm-binaries with official mozilla/geckodriver repo for arm64. Fixes #22

* [deploy] with upstream changes and official Mozilla geckodriver arm64 v0.32.0

* [deploy] 4.5.2 with Java 11 HTTP client

* [deploy] 4.5.3

* [deploy] merge from upstream and deploy 4.6.0

* Modified the telemetry installation commands so that the coursiers launcher pulled the binary based on arch, and only for the supported ones arm64 and x86_64

* [deploy] 4.6.0

* Update Firefox to v107

* [deploy] 4.7.0

* [deploy] 4.7.1

* Publish plain version numbers (e.g.: 4.6.0, 4.6, 4)

* [deploy] using the native coursier binaries, since the JAR version takes too long and causes the build to exceed the timeout

* [deploy] with jaegar observability jars only for aarch64 since it causes the deployment to timeout for other architectures.

* Upgrade to Firefox 108.0-2 for all architectures

* Test [deploy]. Add the grid components to the deploy step, and split up building images into different, parallel jobs to reduce build time.

* Test [deploy]. Add the grid components to the deploy step, and split up building images into different, parallel jobs to reduce build time.

* [deploy] fix job names

* test [deploy] debug some broken build processes.

* [deploy] Avoid make and run all build commands brom build-and-push.sh

* [deploy] 4.7.2 with Firefox 108

* [deploy] testing using an exit code in case a command in the script fails

* [deploy]

* Change bash to sh

* [deploy] test

* [deploy] testing to see why building base behaves differently with make vs running via a script

* [deploy] re-register binfmt and qemu for each runner

* [deploy] testing tagging and release notes job after fixing env var dereferencing

* [deploy] testing tagging and release notes job after fixing env var dereferencing

* [deploy] try using one of the parameters passed in declaratively instead.

* [deploy] try with the job name and also log it for the base job as well

* [deploy] using the make targets parameter.

* [deploy] using the make targets parameter.

* [deploy] test

* [deploy] test

* test [deploy] Added scripts and logic to add the Major_minor tags to the non-browser images, and added logic to add all of the tags to the release notes.

* Changed file permissions so shell script can be executed.

* Test [deploy] Remove comment

* Test [deploy] Adding NAMESPACE variable to the docker-pull-related-tags script.

* Test [deploy] and retag the images with related tags instead of excessive pulling.

* Test [deploy]. Rename docker-pull-related-tags to docker-add-related-tags. Clean up the names of the steps in the release notes generation step. Reorder the MAJOR, MAJOR-MINOR, and VERSION tags for the browser images so the order in Docker Hub matches their upstream siblings. Temporarily disable building images to focus on the release notes generation step.

* Test [deploy] forgot a tag

* Test [deploy] need to set build date to date of prev deployed images in order to test the final job

* test [deploy] removed commented test code

* Test [deploy] to see the full flow.

* test [deploy] after merge from trunk and upstream

* Test [deploy]

* Test [deploy]

* Fix ordering of the grid images

* Change everything back to the production 'seleniarm' Docker credentials and namespace.

* [deploy] 4.8.0 with upgrade Firefox to 109 and full grid.

* If we're getting release notes, pull from docker anonymously

* [deploy] with 0.32.1 geckodriver

* [deploy] Need to be logged into Docker Hub in order to push tags but not for release notes portion.

* [deploy] 4.8.0 with latest noVNC and websockify

* Upgrade to Firefox 109 and geckodriver 0.32.2

* [deploy] 4.8.1 and geckodriver 0.32.2

* [deploy] with updates to use buildx imagetools instead of docker manifest to add tags to multi-arch images

* [deploy] with 'chomium' typo fix.

* [deploy] updates from upstream

* Updated multi-arch Firefox to 111.0.1-1.

* [deploy] 4.8.2

* [deploy] 4.8.2 with Firefox rollback to v109.

* [deploy] 4.8.2

* [deploy] 4.8.3. Updated build-and-push.sh script to use default Selenium version from the Base/Dockerfile so environment variable is only needed if we want the tag version to be something else.

* Update Firefox to v112.0-1

* [deploy] 4.9.0

* Adding some delays between building images that are dependent on each other to avoid 'failed to solve' errors

* For build errors, we'll retry them 5 times before giving up

* Updating the README docs to reflect the state of building the grid components.

* [deploy] 4.9.1

* debian:latest is now bookworm, and openjdk-11-jre-headless is missing. So we pin to debian:bullseye

* Bump Firefox to 114.0-1 and geckodriver to 0.33.0

* [deploy] Selenium 4.10, Firefox 114,0-1 geckodriver 0.33.0

* Update CircleCI config to deploy grid from trunk

* Updated Firefox to 116.0-2

* Downgrade Selenium to 4.10 with updated browsers and drivers

* [deploy] updated browsers with Selenium 4.10.0

* Merge from upstream to add Selenium Manager SE_OFFLINE environment variable. Upgrade to Selenium 4.11.0

* update python selenium module to latest. Update Firefox

* [deploy] latest browsers for Selenium 4.10.0

* [deploy] 4.10.0 redeploy

* Fix build scripts so the RELEASE variable is used.

* Fix Makefile - add BASE_RELEASE and BASE_VERSION to the base_multi action

* Adding locale to Chromium dockerfile.

* Handle usrmerge issues https://wiki.debian.org/UsrMerge

* Just install usrmerge

* Try chromium without usrmerge. Upgrade Firefox to 120

* Add usrmerge to NodeChromium after setting sources. Split Firefox install into 2 runs for easier debugging

* [deploy] test with debian bookworm update - was missing the browser_version and browser_binary_location from upstream. Java package openjdk no longer available in bookworm so replaced with temurin

Co-authored-by: Fried Hoeben <[email protected]>

* [deploy] test

* [deploy] test from tmp

* [deploy] fixed tests

* Fixed tests by waiting for downloadable files to exist in array, fixes Chromium tests.

Co-authored-by: Fried Hoeben <[email protected]>

* Prepare release for 4.16.1

* [deploy] 4.16.1

* test(chart) against build multi

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Sync update from upstream

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Adding script used to build the multi-arch images, but locally using only one architecture.

* Fixed issue where xauth not found, preventing xvfb from starting.

* CI chart tests against amd64 only

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Skip NodeChromium in Dockerfile scan

Signed-off-by: Viet Nguyen Duc <[email protected]>

* [deploy] v4.17.0

* [build] Update deploy workflow

Signed-off-by: Viet Nguyen Duc <[email protected]>

* [deploy] v4.17.0

* [deploy] v4.17.0

Signed-off-by: Viet Nguyen Duc <[email protected]>

* [deploy] 4.17.0 - Fix bug in auto-retry logic where if build fails 5 times it needs to also return exit 1 to not let CI think it succeeded.

* Sync with upstream

* [deploy] 4.18.0

* [deploy] tag image name 4.18.0

* Release v4.18.1 [deploy]

Signed-off-by: Viet Nguyen Duc <[email protected]>

* [deploy] fix broken link to download Firefox v124

Update Dockerfile.multi-arch

* update: Debian repo is used in NodeChromium

Fixed seleniumhq-community#69

* Temporary disable arch linux/arm/v7 due to NodeFirefox build failed [deploy]

Signed-off-by: Viet Nguyen Duc <[email protected]>

* .circleci fetch selenium version from Makefile

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Add back platform linux/arm/v7

This reverts commit d16ae9e.

Signed-off-by: Viet Nguyen Duc <[email protected]>

* Update .circleci [deploy]

Signed-off-by: Viet Nguyen Duc <[email protected]>

---------

Signed-off-by: Viet Nguyen Duc <[email protected]>
Co-authored-by: James Mortensen <[email protected]>
Co-authored-by: Peter Triesz <[email protected]>
Co-authored-by: Xavier G <[email protected]>
Co-authored-by: DJ Gregor <[email protected]>
Co-authored-by: Fried Hoeben <[email protected]>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants