Skip to content

[ADD] build.sh: Install Chrome and ffmpeg via CHROME_INSTALL build flag - #244

Merged
moylop260 merged 1 commit into
mainfrom
main-chrome-install-hugho-ad
Oct 11, 2026
Merged

moylop260 merged 1 commit into
mainfrom
main-chrome-install-hugho-ad

Conversation

@hugho-ad

@hugho-ad hugho-ad commented Oct 8, 2026 •

Copy link
Copy Markdown
Contributor

What

Adds the CHROME_INSTALL build flag. When enabled with --build-env-args CHROME_INSTALL, the generated image installs Google Chrome and ffmpeg. CHROME_VERSION from variables.sh is honored like vxci does: a pinned version is taken from Google's apt pool while it is published there, otherwise from Chrome for Testing.

Based on vxci implementation:

Why

Odoo JS tours need a Chrome binary, and Odoo records a screencast with ffmpeg when a tour fails. The deployv image ships neither, so tours that pass in CI cannot be reproduced inside a t2d container. Odoo <= 16 drives tours with the legacy headless mode removed in Chrome 132, so those repos pin an older build that Google's apt pool no longer serves; Chrome for Testing keeps every build. The flag is opt-in like the others so images that never run tours do not pay the download.

How to Test

  1. travisfile2dockerfile --build-env-args CHROME_INSTALL <repo> <branch>
  2. Run the generated 10-build.sh and 20-run.sh.
  3. Inside the container: google-chrome --version (matches CHROME_VERSION when the repo pins one) and ffmpeg -version.
  4. Run a module with a JS tour: odoo-bin -d test -i <module> --test-enable --test-tags /<module> --stop-after-init.

Checklist

  • CI passes
  • Tests / evals cover the change
  • Docs updated if behaviour changed

@hugho-ad
hugho-ad requested a review from moylop260 October 8, 2026 17:41
@hugho-ad
hugho-ad force-pushed the main-chrome-install-hugho-ad branch from e24040d to a70eb94 Compare October 8, 2026 17:53
@moylop260
moylop260 force-pushed the main-chrome-install-hugho-ad branch from a70eb94 to 5fd2305 Compare October 11, 2026 20:07
@moylop260
moylop260 marked this pull request as ready for review October 11, 2026 20:08
@moylop260
moylop260 force-pushed the main-chrome-install-hugho-ad branch from 7bea455 to 89ad8fc Compare October 11, 2026 20:17
Odoo JS tours need a Chrome binary, and Odoo records a screencast with
ffmpeg when a tour fails. The deployv image ships neither, so tours that
pass in CI cannot be reproduced inside a t2d container.

CHROME_VERSION from variables.sh is honored the same way vxci does: a
pinned version is taken from Google's apt pool while it is published
there, otherwise from Chrome for Testing. Odoo <= 16 drives tours with
the legacy headless mode removed in Chrome 132, so those repos pin an
older build that the pool no longer serves.

Opt-in like the other build flags, so images that never run tours do not
pay the download.

Based on vxci implementation:
- tools_test.py (install_chrome_commands, install_chrome_for_testing_commands): https://git.vauxoo.com/devops/vxci/blob/master/vxci/tools_test.py
- common.py (install_test_deps): https://git.vauxoo.com/devops/vxci/blob/master/vxci/common.py

Co-authored-by: Hugo Adan <hugo@vauxoo.com>
@moylop260
moylop260 force-pushed the main-chrome-install-hugho-ad branch from 89ad8fc to c90291d Compare October 11, 2026 20:18
@moylop260
moylop260 merged commit 6f75a7e into main Oct 11, 2026
14 of 20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants