Etiqueta de Jenkins Git Publisher que no detecta variables de entorno

En mi script bash de Jenkins, exporto la siguiente variable de entorno:

export TAG_NAME=v$LIVE_VERSION.$LIVE_BUILD 

En la sección de editor de Git, bash crear una label con el campo de nombre de label lleno de $TAG_NAME , pero está intentando crear una label literalmente con el nombre $TAG_NAME lugar de sustituirla por el valor de la variable de entorno.

Nota: esto no es un duplicado de esta pregunta SO, ya que la respuesta funciona para el asker, pero por alguna razón no funciona para mí.

Supongo que comenzaste bash a través de un paso "Ejecutar shell" en Jenkins.

El problema aquí es que las variables de entorno de shell no son las mismas que las variables de entorno utilizadas por Jenkins. Si bien puedes usar ciertas variables de Jenkins en bash (ve a <your_jenkins_server_address>/env-vars.html/ para ver cuáles), no puedes hacer lo contrario. Cualquier variable que establezcas en bash se va cuando bash termina.

Una solución consiste en escribir las tags en el file y leerlas con el plugin Jenkins EnvInject . El complemento puede leer un file de properties y agregar todas las properties como variables de entorno de Jenkins.

Por ejemplo, bash writing to file:

 echo TAG_NAME=v$LIVE_VERSION.$LIVE_BUILD > tags.txt 

El plugin EnvInject lee el file e inyecta sus properties para que Jenkins pueda usarlo:

Variable de entorno de inyección