И где же оно противоречит? Вы докапались просто до нюанса в описании того, для чего может пригодиться партишен. И давайте пожалуйста конструктивную критику, если вам не понравилась моя реализация (а я в начале статьи сказала, что она не самая оптимальная), то предложите свою. Лучше делиться опытом, чем негативом
Не стали прибегать к коробочным решениям из-за того, что для каждого типа задач есть свои нюансы, которые иной раз коробки или инструменты не могут выполнить. К примеру, разное количество задач в параллели, да разное отправление через http или кафку. Ну и надо отслеживать статус выполнения задач
Скорее всего вы правы, я в этом деле еще профан. А можете чуть более конкретно описать, как это сделать? Или может знаете пару хороших статей на этот счет?
test_integration:
script:
- docker-compose -f docker-compose.test.yml up --abort-on-container-exit
Параллельный запуск тестов
stages:
- build
- test
unit_test:
stage: test
script: docker run --rm myapp npm test
integration_test:
stage: test
script: docker-compose -f docker-compose.test.yml up --abort-on-container-exit
e2e_test:
stage: test
script: docker run --rm myapp npm run test:e2e
Действительно очень хитрая форма. Спасибо!
Это точно, моя главная головная боль на этот месяц. Особенно когда методы max bridge половина не работают на веб версии)
Тут вы правы, мой косяк)
И где же оно противоречит? Вы докапались просто до нюанса в описании того, для чего может пригодиться партишен.
И давайте пожалуйста конструктивную критику, если вам не понравилась моя реализация (а я в начале статьи сказала, что она не самая оптимальная), то предложите свою. Лучше делиться опытом, чем негативом
Учту и постараюсь добавить в ближайшее время, спасибо за комментарий!
Не стали прибегать к коробочным решениям из-за того, что для каждого типа задач есть свои нюансы, которые иной раз коробки или инструменты не могут выполнить. К примеру, разное количество задач в параллели, да разное отправление через http или кафку. Ну и надо отслеживать статус выполнения задач
Я призналась еще в начале, что сама не писала test, но насколько я предполагаю, ответ ии плюс минус верный, учитывая мой небольшой опыт
как вариант
Скорее всего вы правы, я в этом деле еще профан. А можете чуть более конкретно описать, как это сделать? Или может знаете пару хороших статей на этот счет?
Если использовать чуть более специализированные тесты, то:
Пишем что-то в docker-compose.test.yml:
В пайплайне будет выглядеть так:
Параллельный запуск тестов
Если честно, сама я такое не писала, но если чисто в теории, то в том же файле можно написать этап test.
Для GitLab CI (.gitlab-ci.yml):
Для GitHub Actions (.github/workflows/ci.yml):
Сначала собираем образ
Затем тестируем:
Загружаем собранный в билде образ из временного файла myapp.tar
Запускаем docker run --rm с командой тестов
Если тесты упадут - пайплайн остановится
Деплоим только если тесты прошли (все тот же образ myapp.tar)