Установка переменных среды ОС в Angular-CLI - PullRequest
1 голос
/ 20 марта 2019

Контекст:

(для случая, когда я сталкиваюсь с проблемой XY)

По разным причинам мы недавно решили модулировать наше угловое приложение. Чтобы достичь этого, мы перешли на angular-cli с Nrwl/Nx workspace из старой ручной сборки веб-пакетов. Мы используем Jest для наших модульных тестов, а наш сервер сборки - Bamboo. Для обеспечения Bamboo понятными результатами испытаний мы используем jest-bamboo-reporter. Наши тестовые сборщики @nrwl/builders:jest.

Проблема:

Чтобы протестировать все наше приложение, мы, естественно, должны протестировать все библиотеки, а также приложения. Это все работает нормально, со следующей настройкой:

"scripts": {
    "test": "npm-run-all test:app:* test:lib:*",
    "test:app:first": "set JEST_REPORT_FILE=report/test-report-first.json&& ng test first",
    "test:app:second": "set JEST_REPORT_FILE=report/test-report-second.json&& ng test second",
    "test:lib:lib1": "set JEST_REPORT_FILE=report/test-report-lib1.json&& ng test lib1",
    "test:lib:lib2": "set JEST_REPORT_FILE=report/test-report-lib2.json&& ng test lib2",
    ...
    "test:lib:xy": "set JEST_REPORT_FILE=report/test-report-xy.json&& ng test xy"
}

Единственное, что удерживает нас от этого красивого и аккуратного, - это постоянные JEST_REPORT_FILE определения переменных среды, которые сообщают репортеру, где должен находиться выход. Есть ли лучший способ сделать это? Я хотел бы указать переменную среды в ng test описании каждой библиотеки.

...