El script de Shell no se ejecutará en jenkins, pero de forma manual lo hará

Esto parece ser un problema realmente extraño. Estoy usando Jenkins para automatizar la compilation y la creación de compilation. Tengo un script de shell que cuando ejecuto manualmente en gitserver, está bien, pero el mismo script a través de Jenkins muestra un error:

Error:

/tmp/hudson829990263989049539.sh: 2: build / envsetup.sh: error de syntax: "(" inesperado

Contenido del script de shell (envsetup.sh):

#!/bin/sh function hmm() { cat <<EOF .................. 

Comando utilizado tanto para manual como para Jenkins:

 . build/envsetup.sh 

Intenté varios methods, por ejemplo, cambiar la ruta para la ejecución del script, chown y luego ejecutar, dos2unix, etc. pero nada parece funcionar hasta ahora.

Alguna idea sobre esto? Gracias por adelantado.

El problema se resolvió cuando puse

 #!/bin/bash 

en los pasos de construcción en Jenkins.

Ejecute su script de shell con sudo .

sudo .build / eventsetup.sh