Я використовую декларативний трубопровід Дженкінса для автоматизації мого процесу збирання. Ми хочемо опублікувати наші артефакти у віддаленому сховищі JFrog, лише якщо проходять певні умови (Sonar, Checkmarx).
Після невеликих досліджень я виявив, що для цього корисний плагін Artifactory. Але я не можу знайти жодного документа про те, як інтегруватися в декларативний конвеєр. Нижче представлений фрагмент коду від Jenkinsfile
stages{
stage('Pre-Build'){
steps{
script{
def server = Artifactory.server 'LocalJfrog'
def rtGradle = Artifactory.newGradleBuild()
rtGradle.resolver server: server, repo: 'gradle-dev-local'
rtGradle.deployer server: server, repo: 'gradle-release-local'
rtGradle.useWrapper = true
}
}
}
}
Умовна публікація неможлива з наведеним вище кодом, оскільки я не можу повторно використовувати змінну сервера, навіть якщо вимкнути автоматичну публікацію.