Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Adds a “develop branch” dev-environment wrapper for MageForge, centered around DDEV for running Magento locally and Trunk for non-PHP linting/formatting.
Changes:
- Introduces a DDEV-based Magento + OpenSearch setup, plus helper
ddevcommands (install, magento CLI, phpcs/phpcbf/phpstan, mago). - Adds Trunk configuration (linters, runtimes, config files) and repository ignore/export rules.
- Updates Copilot instructions to document the new dev-wrapper repo structure and workflows.
Reviewed changes
Copilot reviewed 20 out of 21 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
.trunkignore |
Excludes DDEV artefacts from Trunk scanning. |
.trunk/trunk.yaml |
Defines Trunk CLI version, runtimes, enabled linters and actions. |
.trunk/configs/.yamllint.yaml |
YAML lint rules configuration. |
.trunk/configs/.shellcheckrc |
ShellCheck configuration. |
.trunk/configs/.markdownlint.yaml |
Markdownlint config aligned with Prettier. |
.trunk/configs/.hadolint.yaml |
Hadolint rule ignores for Dockerfile linting. |
.trunk/configs/.checkov.yaml |
Checkov skip list. |
.trunk/.gitignore |
Ignores Trunk-generated caches/output. |
.gitignore |
Ignores local dev directories and keeps Trunk config tracked. |
.github/copilot-instructions.md |
Documents dev-wrapper structure, DDEV usage, conventions, and Trunk usage. |
.gitattributes |
Excludes dev-environment files from git archive exports. |
.ddev/opensearch/Dockerfile |
Custom OpenSearch image for DDEV with extra plugins. |
.ddev/docker-compose.opensearch.yaml |
DDEV compose override adding OpenSearch + Dashboards services. |
.ddev/config.yaml |
Core DDEV project configuration (Magento docroot, PHP/DB versions, hooks). |
.ddev/commands/web/phpstan |
Runs PHPStan in-container; installs tooling when missing. |
.ddev/commands/web/phpcs |
Runs PHPCS in-container with Magento standard. |
.ddev/commands/web/phpcbf |
Runs PHPCBF in-container with Magento standard. |
.ddev/commands/web/mago |
Adds a ddev mago wrapper for PHP analysis tooling. |
.ddev/commands/web/magento |
Adds ddev magento wrapper to run bin/magento in-container. |
.ddev/commands/web/install-magento |
Automates installing Magento + symlinked MageForge module into the DDEV project. |
.ddev/addon-metadata/ddev-opensearch/manifest.yaml |
Records the DDEV OpenSearch add-on metadata. |
Contributor
|
@Morgy93 I'm unable to start working on this because of repository rules that prevent me from pushing to the branch:
See the documentation for more details. |
dermatz
approved these changes
Jun 2, 2026
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This pull request introduces a comprehensive DDEV-based local development environment for Magento 2, including OpenSearch support and several developer productivity tools. The changes add configuration files, Docker setup, and custom commands to streamline Magento installation, code analysis, and coding standards enforcement.
Environment setup and configuration:
.ddev/config.yamlto define the project as a Magento 2 site with PHP 8.4, MariaDB 10.6, and Nginx, specifying the Magento docroot and composer root..ddev/addon-metadata/ddev-opensearch/manifest.yamlto document the OpenSearch addon metadata for DDEV..gitattributesto exclude development and configuration files from export builds.OpenSearch integration:
.ddev/docker-compose.opensearch.yamlto define OpenSearch and OpenSearch Dashboards services, including health checks and environment settings for local development..ddev/opensearch/Dockerfileto install required OpenSearch plugins (analysis-phoneticandanalysis-icu).Developer tooling and commands:
.ddev/commands/web/install-magentoscript to automate Magento installation, including sample data, disabling 2FA, and linking the local Mageforge module..ddev/commands/web/magentofor running Magento CLI commands inside the container..ddev/commands/web/magofor running the Mago PHP analysis tool, with a check for its installation..ddev/commands/web/phpcsand.ddev/commands/web/phpcbffor running PHP_CodeSniffer and auto-fixing coding standards, installing dependencies if missing and supporting flexible path arguments. [1] [2].ddev/commands/web/phpstanfor running PHPStan analysis with Magento extension, auto-installing dependencies as needed.