rmrevin/yii2-application
Composer 安装命令:
composer create-project rmrevin/yii2-application
包简介
Yii 2 Advanced Application Template edited by rmrevin
README 文档
README
Создание нового приложения
Если у Вас не установлен Composer, вы должны установить его следуя инструкция на официальном сайтеа getcomposer.org.
Новый проект Вы можете создаь выполнив команду:
php composer.phar create-project --prefer-dist --stability=dev rmrevin/yii2-application my-new-application
Подготовка окружения
Для обработки bower пакетов, в системе требуется глобально установить пакет fxp/composer-asset-plugin. Делается это командой
php composer.phar global require "fxp/composer-asset-plugin:1.0.0"
Для полуавтоматического деплоя используется phing. Установить phing не составляет труда. Для этого необходимо выполнить команду
pear channel-discover pear.phing.info pear install --alldeps phing/phing
Деплой
Document root -
- Web -
~/frontend-app/web
- Клонировать проект через git
- Скопировать файл
.environment.example.phpв.environment.php, заполнить необходимые данные. MYSQL - основаня база, MYSQL_TEST - копия базы для автоматических тестов. - Установить зависимости через композер
./composer.phar install(если нет композера, установить через./getcomposer) - С помощью команды
./initвыбрать нужное окружение - Развернуть миграции
./frontend migrate - Установить frontend зависимости через npm
npm install - Скомпилировать less в css
phing less - Создать пользователя-администратора
./frontend user/add, программа спросит придумать имя, email и пароль
Система готова к эксплуатации.
Обновление
- Обновить кодовую базу через git
- Обновить композер
./composer.phar selfupdate - Обновить зависимости через композер
./composer.phar update - Развернуть новые миграции
./frontend migrate - Оновить frontend зависимости через npm
npm update - Скомпилировать less в css
phing less
Система готова к эксплуатации.
Полуавтоматический деплой и обновление
Сначала потребуется скачать обновление из гита командой git pull, затем выполнить одну из команд:
phing build/production- собрать проект для продакшена.phing build/demo- собрать проект для demo площадки.phing build/dev- собрать проект для dev площадки.
Дополнительно доступны следующие команды (они выполняются в рамках build/* команд, и добавлены только для справки):
phing clear- удалить все временные файлы и логи во всех приложениях.phing clear/frontend- удалить все временные файлы и логи в приложении frontend.phing migrate- выполнить все новые миграции для всех приложенийphing migrate/frontend- выполнить все новые миграции для приложения frontend
Основные моменты
За основу каркаса взят yii2-advance-application. Он позволяет создавать комплекс из разных приложений с разными подходами (обычное web приложение, cli приложение, rest приложение). На данный момент, в проекте созданны следующие приложения:
- frontend-app - основное web приложение.
Так же присутствуют несколько вспомогательных разделов:
- common - общие для всех приложений ресурсы (конфиги, расширяющие компоненты фреймворка, хелперы)
- frontend-modules - здесь хранятся модули для web приложения. Это как раз таки те модули, которые вызываются из веба. В идеале, здесь должны быть только расширяющие компонениы, контроллеры, модели форм и представления.
Для запуска тестов
Для того, чтобы запустить codeception тесты, необходимо скопировать конфигурации для тестов и настроить их для своей плащадки.
Автоматически, это поможет сделать phing. Запускаете из корня проекта команду phing build/codecept, и конфиги автоматически скопируются.
Для ручного копирования необходимо в директориях erp-app/tests и hub-app/tests скопировать файлы acceptance.suite.yml.dist в acceptance.suite.yml,
functional.suite.yml.dist в functional.suite.yml и unit.suite.yml.dist в unit.suite.yml.
После того, как файлы были скопированы, необходимо их настроить. В acceptance.suite.yml необходимо изменить параметры PhpBrowser/url и REST/url под настройки Вашей площадки.
Остальные файлы могут быть оставлены без изменений.
После создания конфигов, нужно "собрать" "актёров" для тестирования. Для этого из корня проекта выполните команды
./codecept build -c web-app/tests/codeception.yml
Теперь можно приступать непосредственно к запуску тестов.
Для этого из корня провека выполните команду
# запустить выполнение всех тестов во всех приложениях ./codecept run # запустить выполнение только тестов для erp приложения ./codecept run -c web-app/tests/codeception.yml # запустить выполнение только unit тестов для hub приложения ./codecept run -c web-app/tests/codeception.yml unit # запустить выполнение определённого unit теста для hub приложения ./codecept run -c web-app/tests/codeception.yml unit commands/UserCommandTest.php
Для генерации карты покрытия кода к вызову комманды добавьте параметр --coverage-html. Для отображения более подробной иформации по ходу выполнения теста к вызову комманды добавьте параметр --debug.
./codecept run --coverage-html ./codecept run -c web-app/tests/codeception.yml --coverage-html --debug
统计信息
- 总下载量: 22
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: BSD-3-Clause
- 更新时间: 2015-03-16