#circleci #circleci-2.0 #circleci-workflows #circleci-orb
Вопрос:
Мы работаем над уменьшением общего времени выполнения теста с помощью функции параллелизма, доступной в circle ci. Мы реализовали параллелизм с 3, и мы успешно можем разделить тест на все доступные машины. Пока все хорошо, никаких проблем.
Проблема, с которой мы сталкиваемся, связана с консолидированным уведомлением о сборке. Перед внедрением параллелизма в конце шагов у нас есть шаг запуска для отправки уведомления о состоянии сборки по электронной почте и в чате.
при параллельной работе мы получаем уведомления для всех трех машин, которые мы думали импровизировать. Пожалуйста, предложите способ справиться с этим. Ниже приведен пример задания и рабочего процесса, который мы использовали
Требование состоит в том, что необходимо отправить консолидированное уведомление на основе всех результатов 3-х тестовых запусков машины.
Jobs:
Sanity-suite:
docker:
- image: circleci/node:12
working_directory: ~/repo
parallelism: 3
steps:
- cache-repo
- dependency-cache
- create-env-vars:
secret_name: “projectspecific variables”
- run:
name: Run Sanity Tests
command: |
FILEPATH=$(circleci tests glob ‘project_specific_path’ | circleci tests split --split-by=timings)
npm run tests
- notify-google-chat
workflows:
sanity-and-functional:
jobs:
- hold-sanity-suite:
type: approval
- sanity-suite:
context: running the endtoend test here
requires:
- hold-sanity-suite