172 похожих чатов

Всем привет. У меня такая задача: pipeline для простой сборки Этот pipeline просто

собирает проект из исходников с помощью gradle, командой gradle clean build

В проекте используется gradle-wrapper поэтому сборщику нужен будет доступ в интернет чтобы скачать gradle-wrapper и куда-то его закешировать

Pipeline должен автоматически запускаться при коммитах в публичные ветки: develop, master, release/.
Нужна возможность запускать этот же pipeline вручную в feature, bugfix и hotfix ветках. Это нужно для разработчиков, чтобы они могли проверить работоспособность своей ветки.

Это я сделал.
# АВТОМАТИЧЕСКИЙ ЗАПУСК
build:
stage: build
script:
- ./gradlew clean build -PrepositoryUser=$Nexus_Repo_User_Protect -PrepositoryPassword=$Nexus_Repo_Pass_Protect
rules:
- if: $CI_COMMIT_BRANCH == "develop" || $CI_COMMIT_BRANCH == "master" || $CI_COMMIT_BRANCH == "release"
tags:
- gradle

# РУЧНОЙ ЗАПУСК
manual build:
stage: manual_build
script:
- ./gradlew clean build
rules: # СОЗДАТЬ РУЧНОЙ PIPELINE
- if: $CI_COMMIT_BRANCH == "feature" || $CI_COMMIT_BRANCH == "bugfix" || $CI_COMMIT_BRANCH == "hotfix"
when: manual
tags:
- gradle

Далее идёт следующая задача:
pipeline для релиза сборки в корпоративный maven nexus
Этот pipeline собирает проект из исходников с помощью gradle, командой gradle clean build
Следующим шагом, с помощью команды gradle publish выполняется публикация артефактов. При этом нужно передавать переменные окружения для доступа к maven nexus repositoryUser="тут имя пользователя который может публиковать" repositoryPassword="тут пароль этого пользователя"
Этот pipeline должен срабатывать при добавлении нового git TAG.
Допустимый формат тэга a.b или a.b.c, если тэг не соответствует - как-нибудь обругаться что тэг не соответствует формату
При ручном запуске, оставить возможность запускать pipeline по хэшу коммита

А вот тут я не могу понять как это сделать в пределах одного пейплайна.
Всё, что я сделал это:
publish to nexus:
stage: publish
script:
- ./gradlew publish -PrepositoryUser=$Nexus_Repo_User -PrepositoryPassword=$Nexus_Repo_Pass
only:
- tags
- /\d+.\d+(\.\d+)?/gm
tags:
- gradle

1 ответов

9 просмотров

правило у ткбя не подходит под условие

Похожие вопросы

Обсуждают сегодня

Интересно, нет ли какого-то способа получить из dll не адрес самой метки, а адрес со смещением?
The Bird of Hermes
54
Делал задачу вот такую https://stepik.org/lesson/4985/step/9?unit=1083 получилось такое https://play.haskell.org/saved/ipKrepqe оно работает, тестов много не писал, но работае...
Fedor
22
что-то я не понимаю, в линуксе отладочную информацию как убрать из бинаря? он что с этой опцией, что без - одного и того же (достаточно большого) размера (да, я про лазарь)
Iluha Companets
13
Всем привет, а может кто-то подсказать какие-то советы или типо того, как оптимальнее всего сапортить сервисы в разных локациях (канада + австралия + евпропа)? Будет ли ошибк...
Stas
8
Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
58
Не догоняю немного каким боком тут эппл Вот есть веб (мини) апп, который по факту веб сайт, просто в телеге веб вью и если там оплата, то нежно вот эти приседания?
e\\/gen
7
Комрады, как на дельфях вытащить "системный" (т.е. который используется ОСью) шрифт со всеми аттрибутами? Я так понимаю, это не Application.DefaultFont?
Ed Doc
7
Почему спрашиваю - поймал падение на совершенно уже пустом проекте, хочу до минимального повторяемого свести... Такой вопрос - вот эти юниты, перечисленные в инспекторе объек...
notme
6
Подскажите пожалуйста, почему на mac m1 (arm) не монтируется ssh-agent сокет в собираемый образ? В системе не запущен ssh-agent и переменная среды SSH_AUTH_SOCK не задана. tes...
Eugene Shutov
6
Сообщение* в закодированном виде. То есть, просто сделать sendMessage?text=Привет бла-бла! не получится, надо в HEX переводить, и добавлять процент, типа такого: sendMessage?t...
КТ315
21
Карта сайта