en passant la variable de script bash dans un jenkins pipeline d'emploi

J'ai un Jenkins pipeline de travail dans lequel j'ai configurer mon environnement avec un script bash nommé setup.sh ce qui ressemble à:

#!/bin/bash
export ARCH=$1
echo "architecture = " ${ARCH}

Dans le Jenkins pipeline script, skype, Icall l'setup.sh script avec:

def lib_arch='linux-ubuntu-14.04-x86_64-gcc4.8.4'
sh ". /opt/setup.sh ${lib_arch}"

malheureusement, il semble que PAS variable est passé à la setup.sh script, et le echo ${ARCH} renvoie une chaîne vide!
J'ai essayé de faire au lieu de:
sh "source /opt/setup.sh ${lib_arch}"
et cela échoue ainsi à la "source not found" message.
J'ai aussi essayé de changer la première ligne de mon script

#!/bin/sh

mais ça n'aide pas. Alors, comment puis-je passer un paramètre à mon script bash dans un Jenkins pipeline script?
merci pour votre aide.

Mise à jour:
une solution de contournement a été sugggested par Bert Jan Schrijve dans ce fil de discussion (voir ci-dessous):

sh "bash -c \" source /opt/setup.sh ${lib_arch}\"" 

OriginalL'auteur Nabil Ghodbane | 2016-10-29