Я отвечаю на ваш ответ, потому что мне удалось решить все мои проблемы.
- Теперь я могу создавать (тестировать, задерживать) угловую библиотеку в конвейере CI
- Я могу интегрировать эту библиотеку в угловой проект.
Вот как я это сделал.Я создал библиотеку в почти пустой директории.Чтобы сделать ng generate library my-lib --skip-package-json --skip-ts-config
, вам нужно иметь файл package.json и файл angular.json в этом каталоге.Я выбрал эти файлы из нового нового приложения ng new app
и удалил ссылку на приложение из рабочей области в angular.json (в разделе проектов)
Как только библиотека была сгенерирована, я создал папку ci
в корне, куда я скопировал файлы tsconfig. *. json, karma.json, ng-package.json и package.json.Я сохранил исходные файлы в корне, чтобы иметь возможность использовать библиотеку в интегрированном режиме в приложении.(просто нужно добавить ссылку на lib в angular.json вашего приложения, например, если он был сгенерирован + путь в stconfig вашего приложения)
Я обновил пути во всех файлах в папке ci
вчтобы иметь возможность запускать такие команды, как:
ng lint --format stylish --tslint-config ci/tslint.ci.json
ng build
, установив для проекта по умолчанию в angular.json значение my-lib
anf, указывающее на tsconfig иng-package в папке ci
Один совет, package.json в корнях должен иметь все зависимости от нового углового приложения, чтобы иметь возможность собирать или тестировать библиотеку.
Надеюсь, это краткое объяснение поможет.