3
こんにちは、CIとCD用にgitlab ciを使い始めました。私は瓶と戦争を保存するためにNexusを使用しています。Mavenプロジェクト用にgitlab ci + nexusリリースを設定する方法
gitlabコンフィグ
stages:
- build
- package
services:
- name: mongo:3.2.4
alias: mongodb
variables:
mongodb_hosts: "mongodb"
build_maven:
image: maven:3-jdk-8
stage: build
script:
- echo $pwd
- "./docker/wait-for-it.sh mongodb:27107 -t 30 -- git checkout master && mvn -B -Dresume=false release:prepare release:perform"
artifacts:
paths:
- target/*.jar
only:
- master
これは正常に動作します、しかし、それはビルド円形の道をトリガします。なぜなら私はmavenアーティファクトをリリースするためにmaven releaseプラグインを使用しているからです。
リリースプラグインは、スナップショットの変更を変更してgitlabに再度コミットします。その時にgit labのトリガーが再びビルドするので、それは循環トリガーだからです。
これを正しく処理する方法は?私は以下を達成するのが好きです。
マスターブランチをビルドするとき、最終バージョンをnexusにリリースし、リリースプラグインのようにpomファイルのバージョンを自動的に増やしたいと思います。
私は1レベルの苦労して苦労しています。資格証明とプロファイルを持つsettings.xmlをどうやってmaven:3-jdk-8イメージに向けるのか教えていただけますか?またはいくつかのリンクを提供することができれば、多くのthx。私はあなたと同じように達成するつもりです。 – kensai
@kensaiグループレベルの変数を追加してそこに保存しました。 –