Open jpraet opened 7 years ago
Alternatively you can using groovy.init.d
to configure Jenkins. From here you are able to access environment variables using System.getenv("VARIABLE_NAME")
, in your case: System.getenv("JENKINS_URL")
I have similar requirement, basically I want jenkins container configuration to be different for different Kuberentes project . example: jenkins/sonarqube for one Kuberentes namespace will be having different names vs second namespace (jenkins/sonarqube). However I want to build standard image where based on environment variable I can update hudson.plugins.sonar.SonarGlobalConfiguration.xml
for
if this can be achieved by groovy option, could you explain little more on how to use goovy.init.d
Regards Priyanka
I think this is not specific to the container but a more generally useful suggestion. Some people asked for a similar thing here: https://issues.jenkins-ci.org/browse/JENKINS-28466?focusedCommentId=283101&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-283101
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:
jenkins.model.JenkinsLocationConfiguration.xml:
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?