私はGradleとJenkinsを使用しており、Artifactoryにアーティファクトを展開したいと考えています。残念ながら、このデプロイメントはJenkinsでビルドを開始するときに一度しか動作しません。Jenkins + Gradle + Artifacts:一度だけ作業を展開する
Jenkinsサーバー上のワークスペースと〜/ .gradleフォルダを削除すると、デプロイメントは再び機能します。ワークスペースだけを削除するだけでは不十分です。
私のバグのようです。不明なバージョンの競合がありますか?それとも私は見えないものと違うのですか?助けてくれてありがとう。
環境:
- ジェンキンス2.7.3
- のGradle 3.1
- Artifactory 4.13.0
- ジェンキンスArtifactoryプラグイン2.7.2
のGradleスクリプトをビルドします。を( jfrogの例に基づいて)
buildscript {
repositories {
jcenter()
}
dependencies {
classpath(group: 'org.jfrog.buildinfo', name: 'build-info-extractor-gradle', version: '4.4.5')
}
}
allprojects {
apply plugin: 'java'
apply plugin: 'maven-publish'
repositories {
jcenter()
}
group = 'org.jfrog.example.gradle'
version = '1.0.1-SNAPSHOT'
status = 'integration'
}
artifactory {
publish {
defaults {
publishConfigs('archives')
}
}
}
// Setting this property to true will make the artifactoryPublish task
// skip this module (in our case, the root module):
artifactoryPublish.skip = true
ジェンキンスArtifactoryプラグインの設定:
- [X]のGradle-Artifactory-統合
- [x]のキャプチャおよび情報
- を構築公開[X]
- をArtifactoryする成果物を公開[x] Maven記述子を公開する
- [x] Maven互換パターンを使用する
休憩が無効(設定されていません)です。
ログイン変更されたバージョンと変更されたソースコードをセカンドランでジェンキンス(コンソール出力)、中:
Jenkins Artifactory Plugin version: 2.7.2
[Gradle] - Launching build.
[CdExampleArtifactory] $ cmd.exe /C '""C:\Program Files (x86)\Jenkins\tools\gradle-3.1\bin\gradle.bat"' --init-script c:/temp/init-artifactory8368571638486556211gradle artifactoryPublish && exit %%ERRORLEVEL%%"
:artifactoryPublish
:api:artifactoryPublish
:services:artifactoryPublish
:shared:artifactoryPublish
:services:webservice:artifactoryPublish
BUILD SUCCESSFUL
Total time: 2.422 secs
Build step 'Invoke Gradle script' changed build result to SUCCESS
Finished: SUCCESS
それはビルドを開始していないタスク(瓶など)のように見えるプロセス。
あなたのジェンキンの仕事のどこかで 'gradle build'を実行していますか? – RaGe
はい、ビルドはタスクとして実行されます。もし私が〜/ .gradleを削除したら、それをタスクとして設定していればビルドが呼び出されます。 2回目の実行では、ビルドが設定されているかどうかに関係なく、artifactoryPublishは何もしません。 – Reinhard