2016-05-24 5 views
4

Я хочу автоматизировать развертывание проекта Yii2 на рабочем сервере. Поэтому у меня мало вопросов. Предполагая, что производственный сервер только что создал и не имеет никакого файла моего проекта.Как развернуть проект Yii2?

  1. Миграции. Там все ясно о команде yii migrate/up, но что делать, если у меня есть миграция rbac, которая развернута на ./yii migrate/up --migrationPath @yii/rbac. Могу ли я развернуть все миграции, которые я использую в одной команде?
  2. Переводы. Нужно ли мне сбрасывать таблицу переводов и развертывать ее просто путем импорта SQL-дампа или есть другой способ?
+0

Я не думаю, что вы действительно можете выполнить его в только одна команда yii, но вы всегда можете выполнить yii migrate && yii migrate --migrationPath @ yii/rbac' – kyle

ответ

3

Прежде всего, вам нужно использовать инструмент CI, такой как GitLab или Jenkins. Это позволит вам выполнять автоматическое развертывание при каждом Git-фиксации (или любом другом управлении версиями, которое вы предпочитаете использовать).

Во-вторых, вы можете импортировать исходный SQL-дамп, чтобы не выполнять миграции rbac при каждой фиксации.

И, в-третьих, о переводах. Обычный способ - хранить переводы в yii\i18n\PhpMessageSource, его проще в обслуживании. Но если вы используете yii\i18n\DbMessageSource, вы можете вносить изменения в сообщения и создавать новые с миграциями БД.

Типичные этапы развертывания могут быть:

  • тянуть latests версию с помощью программы Git/Другое управления версиями

  • Execute миграции (PHP юй мигрирует/вверх)

  • установить любой новые библиотеки. В случае composer (композитор установки) блок

  • запуска и функциональные тесты (PHPUnit)

Я надеюсь, что это было полезно :)

+0

Хорошая идея о инструментах CI! :) –

Смежные вопросы