Come fare Supervisord leggere le variables di ambiente bash

Sto utilizzando Supervisord per eseguire l'applicazione java, che richiede alcune variables di ambiente per la configuration. Sto impostando le variables di ambiente in / etc / environment

export MANAGER_URL="http://192.xxx.xxx.xxx:8080/manager/" export MANAGER_URL2="http://192.xxx.xxx.yyy:8081/manager/" 

Il mio supervisore / conf.d / myjavaapp.conf sembra:

 [supervisord] nodaemon=false logfile_maxbytes=100MB logfile_backups=0 [program:java-app] command=/usr/bin/java -jar /home/pi/deploy/java-app.jar stdout_logfile_maxbytes=200MB stdout_logfile_backups=2 stderr_logfile_maxbytes=100MB stderr_logfile_backups=0 autostart=true 

So che posso impostare le variables di ambiente per la sezione [java-app] come:

 environment=MANAGER_URL="url1",MANAGER_URL2="url2" 

ma questo non funziona per me perché devo aggiornare i valori delle variables usando il manifesto Puppet, che può aggiornare le variables di ambiente bash, ma non le variables di ambiente di process secondario del supervisore.

Ho provato ad accedere alle variables di ambiente shell utilizzando:

 environment=MANAGER_URL=%(MANAGER_URL)s,MANAGER_URL2=%(MANAGER_URL2)s 

ma questo ha causato un errore dicendo che le stringhe non potevano essere espanse.

C'è qualche cosa che posso leggere le variables di ambiente bash nel mio supervisor.conf ?

Info aggiuntive:
Lo sto facendo su raspbian
Supervisord viene eseguito all'avvio di systemd utilizzando lo script in /etc/init.d/
L'agente Puppet viene anche gestito da Supervisor per non rieseguire il servizio Supervisor

Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.