- Добавить в
require
секциюcomposer.json
своего проекта
"pfilsx/yii2-migration-core" : "*"
Стандартное конфигурирование yii2-console проекта(https://www.yiiframework.com/doc/guide/2.0/ru/concept-configurations#application-configurations)
- https://www.yiiframework.com/doc/guide/2.0/ru/db-migrations
- Дополнительные возможности yii2-oracle-pack(autoIncrement(), createPackage(), updatePackage(), undoPackage(), ...)
- Функционал подготовки пакетов для различного окружения
- Функционал Yii2 урезан до миграций и QueryBuilder-а для Oracle. Все лишнее вырезано для уменьшения размера. Удалены лишние зависимости.
- zlakomanov/yii2-oracle-pack интегрирован в стандартный класс yii\db\Connection для oci8.
- Реализован отдельный класс миграций yii\db\oci8\Migration с интеграцией всех возможностей yii2-oracle-pack.
Контроллер PreparePackagesController позволяет подготоваливать пакеты для использования в различном окружении(dev, test, prod...).
Исходный код пакетов хранится в директории packages.install внутри директории c миграциями и использует плейсхолдеры {имя плейсхолдера}
.
При подготовке пакетов все плейсхолдеры в пакетах будут заменены на соответствующие им значения из Yii::$app->params[$env]
.
По умолчанию используется 'prod'
environment. Если в Yii::$app->params
не будет найден подмассив по заданному окружению,
то будет использоваться Yii::$app->params
целиком.
Если значения для замены не будет обнаружено в параметрах, то замены произведено не будет.
Запуск подготовки пакетов:
php yii prepare-packages # для обычного запуска(prod окружение)
php yii prepare-packages --interactive=0 # для тихого запуска(prod окружение)
php yii prepare-packages --env=dev # для обычного запуска(dev окружение)
php yii prepare-packages --interactive=0 --env=dev # для тихого запуска(dev окружение)