Feature(HW06): Create GitHub Actions & Workflows#134
Conversation
- add ASP.NET.OTUS\.github\* - add Dockerfile.ci & global.json - add monorepo support - add .github\workflows\clean-ghcr.yml - add run Test in Docker fix .dockerignore tune Dockerfile tune docker-compose.Development.yml add coverage.runsettings + add package - add docker-compose.test.yml для тестирования опубликованного GHCR image
|
force-pushed (исправление имен у файлов) |
ОбщееУточнения .dockerignore
Уточнение docker-composeПеренесён docker-compose.Development.yml из ../ в папку src рядом с Dockerfile.
Запуск тестов в DockerfileУточнение Dockerfile для запуска в нем тестов (в рамках docker build)
Получения артефактов выполнения тестов, через промежуточный образ (--target test)Получения артефакта "степень покрытия тестами"Дополнительно (к отчету trx) генерится отчет покрытия тестами (coverage.cobertura.xml), для его просмотра нужен "reportgenerator", Запуск финального образа (прошедшего тесты)Запуск через docker compose (все параметры через docker compose, тесты выполнились, но в образ не включаются) Создать Github Actions + Настройка триггераCI = push → test + build + push image CI — автоматический, CD — ручной. В рамках CI тесты выполняются через отдельный step Github Actions (см. Относительно CI vs Docker Build Testing Strategy.pdf) Проверка работы опубликованного образаdocker-compose.test.yml — используется для проверки опубликованного GHCR image В рамках него дополнительно добавлен сервис smoke который запускает smoke test Можно дополнительно поднять только сервис с GHCR image (promocode-factory-api_ghcr), тогда можно тестировать руками. |
add ASP.NET.OTUS.github*
add Dockerfile.ci & global.json
add monorepo support
add .github\workflows\clean-ghcr.yml
add run Test in Docker fix .dockerignore
tune Dockerfile
tune docker-compose.Development.yaml
add coverage.runsettings + add package
add docker-compose.test.yaml для тестирования опубликованного GHCR image