-
-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Build FFmpeg and optimize video container #2468
base: trunk
Are you sure you want to change the base?
Conversation
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Explore these optional code suggestions:
|
I saw that Rclone would be similar to images in the KEDA core project. Sometimes we can see Go CVE that need to upgrade the Go version and rebuild the app on top of that. If the release cycle is not frequent, I think we can patch it ourselves, something like the KEDA images we recently did. |
e972690
to
7d9889b
Compare
The initial version of Docker Selenium, even before it was part of the Selenium org, had FFMPEG in it. It actually had all browsers in a single image. Which made the image quite heavy but made the usage very simple. Along time we changed because many users manifested themselves, they did not need images with everything included but rather the option to choose if they needed a given part. That is why we have tried to build images that focus on a single concern. Is deployment simplification the only motivation to do this? |
Ok, then I will optimize a video container to record multiple Nodes using another approach. |
CI Failure Feedback 🧐(Checks updated until commit 2423b66)
|
Based on my experience, side car pattern is not a bad thing. It is very common to spot now a days. I have seen wide range from envoy-opa side cars, Dapr , vault side cars to service mesh . Good for separation of concern. |
7a7e040
to
22a50fb
Compare
Signed-off-by: Viet Nguyen Duc <nguyenducviet4496@gmail.com>
22a50fb
to
2423b66
Compare
User description
Thanks for contributing to the Docker-Selenium project!
A PR well described will help maintainers to quickly review and merge it
Before submitting your PR, please check our contributing guidelines, applied for this repository.
Avoid large PRs, help reviewers by making them as simple and short as possible.
Description
Build a minimal RecorderBase with FFmpeg and Rclone, and to be included in each Node/Standalone image
Motivation and Context
Types of changes
Checklist
PR Type
enhancement, tests
Description
recorder-base
Docker image that includes FFmpeg and Rclone for video recording and uploading.recorder_base
target and updated dependencies.recorder-base
as its base image.Changes walkthrough 📝
10 files
upload.sh
Simplify rclone configuration handling in upload script
RecorderBase/upload.sh
UPLOAD_CONFIG_DIRECTORY
andUPLOAD_CONFIG_FILE_NAME
withRCLONE_CONFIG
.RCLONE_CONFIG
.validate_endpoint.sh
Add endpoint validation script for HTTP checks
RecorderBase/validate_endpoint.sh
video.sh
Implement video recording and management script
RecorderBase/video.sh
video_graphQLQuery.sh
Add GraphQL query script for session details
RecorderBase/video_graphQLQuery.sh
video_gridUrl.sh
Add script to determine grid URL for video recording
RecorderBase/video_gridUrl.sh
video_ready.py
Add video readiness check script with HTTP server
RecorderBase/video_ready.py
Dockerfile
Update base Dockerfile with video folder and dependencies
Base/Dockerfile
VIDEO_FOLDER
environment variable.python3-psutil
in the installation.Makefile
Add recorder base target and update video build
Makefile
recorder_base
target.recorder_base
.Dockerfile
Update NodeBase Dockerfile to use recorder base
NodeBase/Dockerfile
recorder-base
.Dockerfile
Add Dockerfile for recorder base with FFmpeg and Rclone
RecorderBase/Dockerfile
recorder-base
with FFmpeg and Rclone.1 files
test.py
Update volume mount path in test configuration
tests/charts/templates/test.py
4 files
deploy.yml
Extend build timeout in deploy workflow
.github/workflows/deploy.yml
docker-test.yml
Adjust Docker test workflow timeout and steps
.github/workflows/docker-test.yml
helm-chart-test.yml
Extend build timeout in Helm chart test workflow
.github/workflows/helm-chart-test.yml
nightly.yml
Extend build timeout in nightly workflow
.github/workflows/nightly.yml