Skip to content

Commit 88eb689

Browse files
shyimCopilotsushmanguptaIsengo1989
authored
docs: clarify extension-management conflicts with Store-installed plugins (#2210)
* docs: clarify extension-management conflicts with Store-installed plugins Add a warning and dedicated section explaining that runtime-installed extensions (via the Store/Admin UI) can conflict with the Deployment Helper when extension-management is enabled. Provides two clear options: manage all extensions via Composer, or disable extension-management. Based on customer feedback. * Update guides/hosting/installation-updates/deployments/deployment-helper.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update guides/hosting/installation-updates/deployments/deployment-helper.md * Update guides/hosting/installation-updates/deployments/deployment-helper.md --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Su <112690947+sushmangupta@users.noreply.github.com> Co-authored-by: Micha Hobert <m.hobert@shopware.com>
1 parent a58369e commit 88eb689

1 file changed

Lines changed: 38 additions & 1 deletion

File tree

guides/hosting/installation-updates/deployments/deployment-helper.md

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,9 @@ deployment:
100100
post-update: |
101101
echo "After running system:update"
102102
103-
# Automatically installs and updates all extensions included in custom/plugins and custom/apps and composer
103+
# Automatically installs and updates all extensions included in custom/plugins, custom/apps, and Composer.
104+
# When enabled, extensions installed at runtime (e.g., via the Store in Administration) may cause
105+
# conflicts during deployment. See "Extension Management and Store-installed Plugins" section below.
104106
extension-management:
105107
enabled: true
106108

@@ -218,6 +220,41 @@ Additionally, you can configure the Shopware installation using the following en
218220
- `SHOPWARE_STORE_LICENSE_DOMAIN` - The license domain of the Shopware Shop (default: license-domain value in YAML file)
219221
- `SHOPWARE_USAGE_DATA_CONSENT` - Controls Shopware Usage Data sharing (`accepted` or `revoked`), overwrites Administration choice
220222

223+
## Extension Management and Store-installed Plugins
224+
225+
When `extension-management` is enabled (default), the Deployment Helper automatically manages **all** extensions it finds in `custom/plugins`, `custom/apps`, and via Composer. This means it will install, update, activate, or deactivate extensions based on what is present in your codebase.
226+
227+
:::warning
228+
If you install plugins later via the Shopware Store (Admin UI) while `extension-management` is enabled, this can cause conflicts during deployment. The Deployment Helper does not know about extensions installed at runtime through the Store and may interfere with their state. For example, a Store-installed plugin might be deactivated or behave unexpectedly after the next deployment.
229+
:::
230+
231+
You have two options to handle this:
232+
233+
### Option 1: Manage all extensions through code (recommended)
234+
235+
Install all extensions via Composer and let the Deployment Helper manage them. Disable runtime extension management in the Administration to prevent ad-hoc installations:
236+
237+
```yaml
238+
# config/packages/z-shopware.yaml
239+
shopware:
240+
deployment:
241+
runtime_extension_management: false
242+
```
243+
244+
See [Extension Management](../extension-management.md) for details on installing extensions via Composer.
245+
246+
### Option 2: Disable the Deployment Helper's extension management
247+
248+
If you prefer to manage extensions manually through the Store or Administration, disable the extension management in your `.shopware-project.yml`:
249+
250+
```yaml
251+
deployment:
252+
extension-management:
253+
enabled: false
254+
```
255+
256+
With this setting, the Deployment Helper will skip extension installation and updates entirely. You are then responsible for managing extension states yourself (e.g., via `bin/console plugin:install`, `plugin:update`, etc.).
257+
221258
## One Time Tasks
222259

223260
One time tasks are tasks that should be executed only once during the deployment, like a migration script.

0 commit comments

Comments
 (0)