- composer.json (MIT, shopware/core ~6.6.0 || ~6.7.0, PHP ^8.2), plugin class, placeholder icon - PR checks and release workflow taken over from AeonDumpManager; phpunit runs as a 6.6/6.7 matrix - CHANGELOG, LICENSE, README, CLAUDE.md, smoke test Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1.9 KiB
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
What this is
AeonShopwareTools is a public Shopware 6 plugin (shopware-platform-plugin, MIT) that bundles scripting
and developer tooling. It supports Shopware 6.6 and 6.7 from one codebase
(shopware/core ~6.6.0 || ~6.7.0, PHP ^8.2): only use APIs that exist in both, and test against both.
- Plugin bootstrap class:
src/AeonShopwareTools.php(wired viacomposer.json→extra.shopware-plugin-class). - Services, commands and scheduled tasks are registered explicitly in
src/Resources/config/services.yaml(create it with the first service; no autowiring), each with its tag (console.command,shopware.scheduled.task, ...).
Running the plugin
There is no standalone runtime. docker-compose.yml mounts the repo into a dockware/shopware container at
custom/plugins/AeonShopwareTools; install with bin/console plugin:refresh and
bin/console plugin:install --activate AeonShopwareTools inside the container.
Tests
PHPUnit through Shopware's TestBootstrapper (tests/TestBootstrap.php), so tests need a real Shopware
installation and database.
vendor/bin/phpunit -c custom/plugins/AeonShopwareTools/phpunit.xml
CI / release pipeline
Same Gitea pipeline as AeonDumpManager, plugin-agnostic (name/version come from composer.json):
workflows/plugin-checks.yml(PRs intomain):version-changelog(version greater than the latest release, matching## [x.y.z]heading in CHANGELOG.md),package(shopware-clipackage + validate,scripts/ci/assert-built-assets.sh) andphpunit, a matrix over the latest 6.6 and 6.7. Keep the matrix in sync withrequire.shopware/core.workflows/release.yml(push tomain): Gitea Release with the zip, Composer registry publish. UsesRELEASE_TOKEN.- Required checks on
mainare set withscripts/protect-main.sh(tea api).