You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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
Motivation and Context
Types of changes
Bug fix (non-breaking change which fixes an issue)
New feature (non-breaking change which adds functionality)
Breaking change (fix or feature that would cause existing functionality to change)
Remove unused PostgreSQL version argument from Sessions Dockerfile
Replace curl with wget for downloading ChromeDriver in emulator tests
Simplify build dependencies by eliminating unnecessary version declarations
Diagram Walkthrough
flowchart LR
A["Sessions Dockerfile"] -->|Remove POSTGRESQL_VERSION| B["Simplified Dependencies"]
C["Emulator Dockerfile"] -->|Replace curl with wget| D["Improved Download Tool"]
B --> E["Cleaner Build Configuration"]
D --> E
Below is a summary of compliance checks for this PR:
Security Compliance
⚪
Supply chain download
Description: The build downloads and unzips a ChromeDriver artifact from ${CHROME_DRIVER_URL} without integrity verification (e.g., checksum/signature or pinned digest), enabling a supply-chain/MITM risk where a malicious zip could be fetched and executed during the image build. Dockerfile.emulator [8-12]
Generic: Security-First Input Validation and Data Handling
Objective: Ensure all data inputs are validated, sanitized, and handled securely to prevent vulnerabilities
Status: Unvalidated URL input: The build arg CHROME_DRIVER_URL is used directly in a shell RUN command without quoting/validation or integrity checking, which may allow unsafe input or unintended downloads during image builds.
Quote ${CHROME_DRIVER_URL}, fail fast if it's empty, and validate the downloaded zip with a pinned checksum (or another integrity mechanism) to avoid tampering and accidental empty/incorrect URLs.
Why:
Relevant best practice - When downloading external tooling/artifacts in CI/Docker, pin/validate the download and handle variables robustly by quoting and ensuring required variables are non-empty.
The workflow ultimately failed at the artifact upload step because actions/upload-artifact@main was invoked without the required input path (log line 796: Input required and not supplied: path).
Earlier in the job, the make setup_dev_env command (run via nick-invision/retry@master) hit a Node error Error: kill EPERM while installing packages (around lines 756-760), but the log snippet does not show this as the final stopping error; the hard failure shown is the missing path for the upload-artifact action.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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
Motivation and Context
Types of changes
Checklist
PR Type
Enhancement
Description
Remove unused PostgreSQL version argument from Sessions Dockerfile
Replace curl with wget for downloading ChromeDriver in emulator tests
Simplify build dependencies by eliminating unnecessary version declarations
Diagram Walkthrough
File Walkthrough
Dockerfile
Remove unused PostgreSQL version dependencySessions/Dockerfile
POSTGRESQL_VERSIONargument declarationJDBC
variables
Dockerfile.emulator
Replace curl with wget for ChromeDriver downloadtests/Dockerfile.emulator
curlcommand withwgetfor downloading ChromeDrivercurl ${CHROME_DRIVER_URL} -otowget -Osyntax