@maxyc_webber
Web-программист

PHPCI: Кто работал? Ответите на пару вопросов?

Решил познакомиться с данным чудом и с CI в целом. Появилось пара вопросов:
1. для чего phpci постоянно заново копирует мой проект из битбакета, а не делает гит апдейт допустим? как то можно избежать постоянного развертывания приложения с нуля? вопрос явно решаемый и я просто не вижу как его решить. У меня тестовый проект ставится пол часа, а если б я взял проект побольше, там бы сборка была все 4 и более.
2. что то не понял, возможно заработался, как можно было бы для тестового деплоя указать использование определенной бд? в гите не храню настроек в бд впринципе
3. есть ли кто использовал данное ПО в связке с Yii2? ну или другим фреймом. Могли бы поделиться phpci.yml?
  • Вопрос задан
  • 499 просмотров
Решения вопроса 1
@maxyc_webber Автор вопроса
Web-программист
1. копирует с нуля, потому что для тестов нужно чистую систему всегда. если делать сборку раз в день/неделю/месяц , то все ок, не накладно будет
2. в процессе изучения )
3. пока сделал лишь проверку качества кода. автотесты еще изучаю
build_settings:
  ignore:
    - "vendor"
    - "tests"
    - "requirements.php"
    - "web"
    - ".idea"
    - "migrations"
setup:
  shell:
    - "export PATH=$PATH:$HOME/.composer/vendor/bin:/usr/local/bin/"
    #- "/usr/local/bin/composer install"
test:
  technical_debt:
  php_mess_detector:
  php_code_sniffer:
    encoding : 'UTF-8'
  php_loc:
  php_docblock_checker:


компзер через шелл использую потому что в path не видит его

описание тестов есть на сайте PHPCI
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Corpsee
@Corpsee
Web-разработчик
2. Примерно так:

build_settings:
    mysql:
        host: 'localhost'
        user: 'testuser'
        pass: '12345678'
    pgsql:
        host: 'localhost'
        user: 'testuser'
        pass: '12345678'
    sqlite:
        path: '/path/to/sqlite.sqlite'
    ...
setup:
    mysql:
        - "CREATE DATABASE test_1;"
    pgsql:
        - "CREATE DATABASE test_2;"
    sqlite:
        - "CREATE DATABASE test_3;"
    ...
complete:
    mysql:
        - "DROP DATABASE test_1;"
    pgsql:
        - "DROP DATABASE test_2;"
    sqlite:
        - "DROP DATABASE test_3;"
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы