Skip to content

🐳 Add php tools in dockerfile#23

Merged
LegeBeker merged 1 commit intomainfrom
perf/download-tools-in-container
Apr 7, 2026
Merged

🐳 Add php tools in dockerfile#23
LegeBeker merged 1 commit intomainfrom
perf/download-tools-in-container

Conversation

@LegeBeker
Copy link
Copy Markdown
Member

✅ Checklist

  • Code is lokaal getest
  • Tests zijn toegevoegd/aangepast
  • Documentatie bijgewerkt (indien nodig)

@LegeBeker LegeBeker self-assigned this Apr 7, 2026
@LegeBeker LegeBeker added the type: ⚡ performance Performance improvement label Apr 7, 2026
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 7, 2026

📝 Walkthrough

Walkthrough

A Dockerfile build step was added to install PHP code quality and analysis tools (php-cs-fixer, phpcs, phpcbf, phpstan) into the Docker image. The tools are downloaded and configured via Composer, with CLI entrypoints symlinked into /usr/local/bin/.

Changes

Cohort / File(s) Summary
Docker Build Configuration
Dockerfile
Added new build step to download php-cs-fixer and install PHP QA tools (phpcs, phpcbf, phpstan) via Composer into /opt/composer, then symlink binaries to /usr/local/bin/ for CLI access.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title includes the required emoji (🐳), is concise at 30 characters, clearly describes the main change (adding PHP tools to Dockerfile), and is in English.
Description check ✅ Passed The description includes a checklist related to testing and documentation practices, which is relevant to the changeset as it represents the author's assessment of the work completed.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch perf/download-tools-in-container

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@Dockerfile`:
- Around line 144-145: The Dockerfile currently downloads php-cs-fixer directly
from cs.symfony.com without pinning or verifying integrity; change the RUN that
fetches php-cs-fixer to download a specific release from GitHub (use a pinned
version tag/ARG like PHP_CS_FIXER_VERSION and the matching release asset URL
instead of cs.symfony.com) and add SHA256 verification before making the file
executable (e.g., fetch or set the expected SHA256 value and run a sha256sum -c
check against the downloaded /usr/local/bin/php-cs-fixer, failing the build if
verification fails), then chmod +x only after the checksum passes. Ensure the
instructions reference the php-cs-fixer binary path
(/usr/local/bin/php-cs-fixer) and the RUN step that currently performs the curl
and chmod.
- Line 147: Replace the caret version constraints used in the Dockerfile
composer global install step so the build is reproducible: change the composer
invocation that sets COMPOSER_HOME=/opt/composer and runs "composer global
require ... squizlabs/php_codesniffer:^3 phpstan/phpstan:^2" to use exact
version pins for squizlabs/php_codesniffer and phpstan/phpstan (refer to the
COMPOSER_HOME line and the composer global require invocation), updating the
package versions to the chosen exact releases (e.g., 3.x.y and 2.x.y) and
keeping the --no-interaction/--no-progress flags unchanged.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 4c1e46ed-51ac-4c08-b7b7-cde326c6c0a6

📥 Commits

Reviewing files that changed from the base of the PR and between 9668991 and ce40186.

📒 Files selected for processing (1)
  • Dockerfile

Comment thread Dockerfile
Comment thread Dockerfile
@LegeBeker LegeBeker merged commit 02fc314 into main Apr 7, 2026
4 checks passed
@LegeBeker LegeBeker deleted the perf/download-tools-in-container branch April 7, 2026 10:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: ⚡ performance Performance improvement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant