-
-
Notifications
You must be signed in to change notification settings - Fork 4.6k
Description
It would be nice if environment variables (or another placeholder replacement mechanism) could be used for the config files in /usr/share/jenkins/ref/. For example:
hudson.tasks.Mailer.xml:
<?xml version='1.0' encoding='UTF-8'?>
<hudson.tasks.Mailer_-DescriptorImpl plugin="mailer@1.19">
<hudsonUrl>http://jenkins.example.com/</hudsonUrl>
<smtpHost>smtp.example.com</smtpHost>
<useSsl>false</useSsl>
<charset>UTF-8</charset>
</hudson.tasks.Mailer_-DescriptorImpl>
jenkins.model.JenkinsLocationConfiguration.xml:
<?xml version='1.0' encoding='UTF-8'?>
<jenkins.model.JenkinsLocationConfiguration>
<adminAddress>no-reply-jenkins@example.com</adminAddress>
<jenkinsUrl>http://jenkins.example.com/</jenkinsUrl>
</jenkins.model.JenkinsLocationConfiguration>
I would like to provide these default configuration files in /usr/share/jenkins/ref/, but the http://jenkins.example.com/ should be specified dynamically when running the container (e.g. for another instance in a test environment).
So I'd like to be able to write something like
<jenkinsUrl>${JENKINS_URL}</jenkinsUrl>
or maybe with a default value
<jenkinsUrl>${JENKINS_URL-http://jenkins.example.com/}</jenkinsUrl>
and then specify a value at runtime with
docker run -e "JENKINS_URL=http://jenkins-test.example.com/"
What do you think?