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 ответов

25 просмотров

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

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта