Jenkins:自动化CI Docker实例

我试图设置jenkins一旦我从docker集装箱启动完全自动化。

我的问题是如何自动configuration全局Jenkins设置。 例如pipe理jenkins和凭证中的项目?

我正在使用这个参考:

https://wiki.jenkins.io/display/jenkins/remote+access+api 

目前,我已经手动设置这些项目。 我想完全自动创buildCI服务器。 jenkins可能有这种可能性,还是需要一些人为干预?

任何帮助将不胜感激。

我们使用厨师来设置主,并运行一些groovy脚本来安装所有的插件和configuration。 它几乎完全自动完成,除了1或2插件,我没有findconfiguration所有其他语言的语法工作正常。

我使用Jenkins CLI安装了所有插件,请检查您的Jenkins / cli /以供参考。

对于一般的configuration你可以安装所有的工具

 import jenkins.model.* import hudson.model.* def inst1 = Jenkins.getInstance() def desc1 = inst1.getDescriptor("hudson.tools.JDKInstaller") println desc1.doPostCredential('buildJenkins@gmail.com','JenkinsOracleXXXXX') import jenkins.model.* import hudson.model.* import hudson.tools.* // JDK installation def inst = Jenkins.getInstance() def desc = inst.getDescriptor("hudson.model.JDK") def versions = [ "jdk-1.8.101": "jdk-8u101-oth-JPR", // "jdk-1.8.102": "jdk-8u102-oth-JPR" ] 

一般variables

 // general properties instance = Jenkins.getInstance() globalNodeProperties = instance.getGlobalNodeProperties() envVarsNodePropertyList = globalNodeProperties.getAll(hudson.slaves.EnvironmentVariablesNodeProperty.class) newEnvVarsNodeProperty = null envVars = null if ( envVarsNodePropertyList == null || envVarsNodePropertyList.size() == 0 ) { newEnvVarsNodeProperty = new hudson.slaves.EnvironmentVariablesNodeProperty(); globalNodeProperties.add(newEnvVarsNodeProperty) envVars = newEnvVarsNodeProperty.getEnvVars() } else { envVars = envVarsNodePropertyList.get(0).getEnvVars() } envVars.put("ARTIFACTORY_URL", "artifactory-url") envVars.put("ARTIFACTORY_USER", "jenkins") envVars.put("DOCKER_USER", "docker-push") instance.save() 

电子邮件地址

 // admin Email def jenkinsLocationConfiguration = JenkinsLocationConfiguration.get() jenkinsLocationConfiguration.setAdminAddress('admin@yours.com') jenkinsLocationConfiguration.save() 

有很多的例子,只是寻找groovyjenkinsconfiguration..如果你有任何具体的问题,让我知道。