Миграции CakePHP 3.7. *: Пропустите или измените путь создания файла schema.lock - PullRequest
0 голосов
/ 12 февраля 2019

Из документации:

Для работы функции diff файл .lock генерируется при каждой миграции, откате или создании снимка, чтобы отслеживать состояние схемы базы данных.в любой данный момент времени.Вы можете пропустить создание этого файла, например, при развертывании в производственной среде, используя параметр --no-lock для вышеупомянутой команды:

$ bin/cake migrations migrate --no-lock

$ bin/cake migrations rollback --no-lock

$ bin/cake bake migration_snapshot MyMigration --no-lock

Мы используем последнюю версию CakePHP 3.7. * Иplatform.sh для развертывания нашего приложения.

@ файл конфигурации платформы, у нас есть следующие строки:

deploy: |
    set -e
    bin/cake migrations migrate --no-lock
...

и журнал ошибок:

PHP Warning:  fwrite(): supplied resource is not a valid stream resource in /app/vendor/cakephp/cakephp/src/Console/ConsoleOutput.php on line 253

[2019-02-12 06:21:49.622155] Launching command 'set -e
bin/cake migrations migrate --no-lock
...
Warning Error: mkdir(): Read-only file system in [/app/vendor/cakephp/migrations/src/ConfigurationTrait.php, line 74]

Это наш путьгенерировать * .lock файлы в доступном для записи каталоге tmp?

1 Ответ

0 голосов
/ 17 февраля 2019

Он не пытается создать .lock файлы, потому что вы сказали ему пропустить эту часть в вашей команде.

Вместо этого он пытается создать каталог seed , потому что он былне в состоянии найти это.Если документы верны, добавление каталога config/Seeds должно позволить ему продолжить работу после этого шага и либо успешно выполнить, либо осветить другую проблему.

...