Groovy instruction Switch avec une liste de valeurs

Je veux utiliser l'instruction Switch dans Jenkins pipeline de travail.

def version = "1.2"
switch(GIT_BRANCH) {
  case "develop":
    result = "dev"
    break
  case ["master", "support/${version}"]:
    result = "list"
    break
  case "support/${version}":
    result = "sup"
    break
  default:
    result = "def"
    break
}
echo "${result}"

Quand GIT_BRANCH est égale à:

  • develop - valeur retournée est dev - OK
  • master - valeur retournée est list - OK
  • support/1.2 - valeur retournée est sup - pourquoi ne pas list?
Si votre question est "qu'est-ce que le comportement de Groovy switch si plusieurs casele match?"?
Je voudrais utiliser que plusieurs cas de match avec une combinaison de valeurs de chaîne et de variables. Dans mon code, la variable ne fonctionne que dans un seul cas de match, ce qui n'est pas la bonne solution pour moi.

OriginalL'auteur Maciej Szymonowicz | 2016-08-10