Passaggio di variabili env per pannello di comando esegui dal jenkins lavoro

0

Domanda

Ancora un'altra domanda su come passare le variabili env. Il compito che sto cercando di risolvere: ho jenkins lavoro il check-out il codice da repo git, eseguire mobile costruire la finestra mobile e l'esecuzione di comandi. Ho bisogno di passare variabili env per eseguire questo comando. Preferibilmente utilizzando env file, ma come singole variabili sarà ok. Qui è il mio jenkins lavoro:

cp WL/${stageid}/env_settings.env ./env_settings.env
ls

docker build \
   -t customer_front${stagePrefix} . 
docker stop customer_front${stagePrefix} || true && docker rm customer_front${stagePrefix} || true
#source env_settings.env
docker run \
      -d --restart unless-stopped \
      -e CLIENT_URL='https://test.customer.app' \
      -e SITE_NAME='My best site' \
      --name customer_front${stagePrefix} \
      -p ${externalPort}:3000 \
      -e DEFAULT_LOCALE=$DEFAULT_LOCALE \
      -e COUNTRY=$COUNTRY \
      -e CURRENCY=$CURRENCY \
      customer_front${stagePrefix}

Ho provato a passare le variabili come eseguire le opzioni di comando, ho provato a memorizzare variabili in env_settings.env file e poi passare con --env-file l'opzione. Entrambe le varianti non lavoro. L'unica cosa che ha funzionato è stato dichiarare args in dockerfile, per poi dichiarare env vars in dockerfile e passarli in comando build, ma questa variante non è adatto per me. Può essere che qualcuno ha avuto lo stesso problema e sa come risolverlo?

docker jenkins
2021-11-23 20:29:46
1

Migliore risposta

0

Per Jenkins c'è davvero bello documenti all' ufficiale Jenkins docs.

Esempio:

stage("some:job") {
  steps {
     script {
        def args = "-e AWS_SECRET_ACCESS_KEY=x"
        docker.image('localstack/localstack:0.12.0').withRun("${args}") { c ->
          sh "echo hi"

        }
     }
  }
}
2021-11-23 23:03:21

Vedi @rudolfninja commento alla sua domanda: "lavoro ordinario, non jenkins pipeline".
Gerold Broser

In altre lingue

Questa pagina è in altre lingue

Русский
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................