@kalya

Что такое «артефакт» в рамках Сontinuous Delivery PHP приложений?

В одной из презентаций по Сontinuous Delivery для PHP приложений был такой слайд image.slidesharecdn.com/continuousdeliveryfinal-14... (вот ссылка на саму презентацию www.slideshare.net/loalf/one-commit-one-release-co... на котором последний шаг - "сгенерировать артифакт (zip файл)" в рамках процесса сборки. Далее этот артефакт (zip файл) заливается на S3 и потом инструментом для деплоя скачивается, например, на staging сервер и запускаются необходимые тесты для определения стабильности билда.

Отсюда у меня возник вопрос - что должно входить в этот zip файл в контексте php приложения (в частности symfony 2)? Должен ли это быть абсолютно весь проект, т.е:
- исходный код
- все необходимые вендоры
- уже сгененерированные ассеты
- подготовленный кеш
и тд?

либо только какая-то часть?

Если кто-то применяет схожие подходы в процессе разработки, просьба поделиться своим опытом по данной теме. Буду очень благодарен за полезные ответы
  • Вопрос задан
  • 1574 просмотра
Решения вопроса 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
артефакт это все то что генерируется в процессе сборки. В частности у меня в проектах где нет Docker, образ которого и является артефактом, а применяется старый добрый tar.gz это делается так:

@echo Build artifacts
    tar --exclude=".git" \
        --exclude=".idea" \
        --exclude="*.iml" \
        --exclude=".vagrant" \
        --exclude="build" \
        --exclude="node_modules" \
        --exclude="devops" \
        --exclude="specs" \
        --exclude="app/cache" \
        --exclude="app/logs" \
        --exclude="parameters.yml" \
        --exclude="web/uploads" \
        --exclude="web/app_dev.php" \
        -zcf build/build.tgz .


Еще артефакты могут включать дополнительные вещи:
- результаты прогона тестов. полезно когда тесты фэйлятся что бы присылать на email разработчикам репорт
- покрытие кода тестами, в виде xml или/и html
- репорты статических анализаторов, вроде phpmd, phpcpd и т.д.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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