b3nl / sw-migrations
使用 shopware 接口启用自定义数据库迁移。
1.1.0
2019-05-15 18:53 UTC
Requires
- php: >= 7.0.0
- ext-pdo: *
Requires (Dev)
- bestit/php_codesniffer: ^1.2
This package is auto-updated.
Last update: 2024-09-16 06:44:55 UTC
README
本软件包受到 shopware 原始数据库部署的启发。 $SHOPWARE_ROOT./build/ApplyDeltas.php 遍历 _$SHOPWARE_ROOT/sql/migrations 目录并执行该目录下的每个迁移文件。每个迁移文件都包含一个类型为 Shopware\Components\Migrations\AbstractMigration 的类。
ApplyDeltas.php 是一个可以像这样调用的 shell 脚本:
php ./ApplyDeltas.php --username="root" --password="example" --host="localhost" --dbname="example-db" [ --mode=(install|update) ]
Shopware 会保存(在表 s_schema_version 中)已执行的迁移文件,并在后续调用中只执行新的迁移文件。
使用本软件包时,基本流程保持不变,但我们通过自定义功能增加了扩展功能。
vendor/b3nl/sw-migrations/build/ApplyDeltas.php
此 shell 脚本提供了迭代自定义迁移的额外参数。它添加了实现此目的的额外参数
- shoppath:您的 shopware 根目录,因为我们可以将此软件包安装在任何目录中
- migrationpath:您自定义迁移文件夹的路径
- tablesuffix:此后缀用于为指定的迁移路径创建自定义版本表。 如果您不提供此值,您的自定义迁移历史将合并到标准历史中。我们建议在任何情况下都提供此值!
此脚本甚至可以用于调用 shopware 标准迁移,如下所示
php vendor/b3nl/sw-migrations/build/ApplyDeltas.php --username="root" --password="example" --host="localhost" --dbname="example-db" [ --shoppath=$SHOPWARE_ROOT --migrationpath=$SHOPWARE_ROOT/_sql/migrations --mode=(install|update) ]
关于此的德语博客文章: http://ecommerce-developer.de/shopware-migrationen-fuer-eigene-deployments-nutzen/