У меня есть библиотека Typescript, которую я упаковываю как модуль npm.Я легко интегрировал эту библиотеку, используя yarn link
во время разработки веб-приложения.
Настало время настроить GitLab CI и позволить другим разработчикам работать над приложением внешнего интерфейса.В настоящее время я сталкиваюсь с проблемой распространения этого пакета.
Опции, которые я определила, и проблемы, с которыми я сталкиваюсь:
Это добавляет исходный код, но так как он машинописный,это не скомпилировано.Я не могу скомпилировать эту библиотеку, используя тот же tsconfig.json
.Компилируется только один файл.
Это решение также имеет проблему, заключающуюся в том, что порт: 22 заблокирован на машинах разработчика.Это помешает им использовать git+ssh
.Я не понимаю, как CI мог бы получить этот пакет, который также работал бы для разработчиков.
Я пытался использовать tarball, но тамнет очевидного способа хранения этого архива.GitLab не предоставляет артефакты, созданные из сборок, другим конвейерам CI.
Затем я решил попробовать добавить модуль узла в репозиторий git.Но я не нашел способа помешать пряже автоматически удалять этот пакет.Если я добавлю библиотеку в node_modules
, то она будет удалена при запуске yarn
.
Конечно, я могу переключиться на использование частного модуля npm.Но мне кажется, что должны быть простые альтернативы для распространения внутренних пакетов, если у вас уже есть отличная среда GitLab.
Как я могу распространять пакет Typescript в частном порядке без частного реестра NPM?