Я уже интегрировал sonar-cube
,Jenkins
а также git lab
Есть ли способ добавить Jenkins
результат сборки (все мои проекты php Angular
) к Sonatype Nexus
хранилище (Sonatype Nexus
уже установлено)?
Для управления зависимостями PHP гораздо лучше подходит Композитор.
Nexus отлично подходит для проектов Java (они могут быть автоматически созданы Jenkins с помощью таких инструментов, как Maven, Gradle). Nexus отлично подходит для скомпилированного кода.
Пожалуйста, смотрите также:
Запустите команду оболочки после сборки, чтобы упаковать свой проект как tar.gz и загрузить его на сервер Nexus. Следующий пример для nexus 2. *. Вам придется проверить синтаксис curl для Nexus 3. Он запустит composer, заархивирует релиз у определенных поставщиков, не заставляя вас запускать установку composer в вашей клиентской среде. Обратите внимание на переменные, которые вы должны будете добавить.
Убедитесь, что вы всегда делаете чистую установку, проверив
if [ -f composer.json ]; then composer install; fi;
tar -zcvf ../`echo $JOB_NAME-$RELEASE.tar.gz | sed -e s/'- Release'/''/g | sed -e s/'\-\-'/'\-'/g | tr -d ' ' ` ./
mv ../`echo $JOB_NAME-$RELEASE.tar.gz | sed -e s/'- Release'/''/g | sed -e s/'\-\-'/'\-'/g | tr -d ' ' ` ./
curl -v \
-F r=releases \
-F g=com.acme \
-F a=widget \
-F v=$RELEASE \
-F p=tar.gz \
-F file=@./`echo $JOB_NAME-$RELEASE.tar.gz | sed -e s/'- Release'/''/g | sed -e s/'\-\-'/'\-'/g | tr -d ' ' ` \
-u $USER_LOGIN:$USER_PASSWORD \
http://127.0.0.1:8081/nexus/service/\local/repositories/php/content`echo $JOB_NAME-$RELEASE.tar.gz | sed -e s/'- Release'/''/g | sed -e s/'\-\-'/'\-'/g | tr -d ' ' `
rm -f `echo $JOB_NAME-$RELEASE.tar.gz | sed -e s/'- Release'/''/g | sed -e s/'\-\-'/'\-'/g | tr -d ' ' `