Jenkins: acionar outro trabalho depois de completar um lançamento maven

0

Eu tenho um trabalho de maven configurado, com o plugin m2release. Ele faz o trabalho perfeitamente, o que é:

  • criando meu aplicativo
  • criando uma versão de lançamento
  • publicando-o no artifactory

Isso é ótimo.

Agora, quero que, sempre que eu lançar algo, um segundo trabalho seja acionado, o que implantaria meu artefato em um servidor.

Não consigo encontrar uma maneira de fazer isso.

Eu tentei escrever um script do Groovy, mas não consigo identificar nele que estou executando um release.

PS: Descobri como acionar um script em groovy aqui: link .

    
por jehon 31.01.2017 / 10:25

1 resposta

0

Eu finalmente terminei a análise do log do número da versão no log de saída:

// Initialize some stuff
def build = Thread.currentThread().executable
def log = manager.build.logFile.text

// We are looking for maven parameter -DreleaseVersion=1.1.1 (space at the end)
def versionFinder = log =~ /-DreleaseVersion=([0-9]+\.[0-9]+\.[0-9]+) /

def RELEASE_VERSION=""
if (versionFinder.size() > 0) {
  RELEASE_VERSION=versionFinder.getAt(0)[1];
}

if (RELEASE_VERSION > "") {
  manager.listener.logger.println("Release version: " + RELEASE_VERSION);
  // Continue with release script
  // For example, here: // https://wiki.jenkins-ci.org/display/JENKINS/Groovy+plugin
}
    
por 31.01.2017 / 19:28

Tags