2017-10-02 12 views
0

ドッカーのコンテナから起動したら、Jenkinsを完全に自動化するように設定しようとしています。Jenkins:CI Dockerのインスタンスを自動化する

私の質問は、グローバルなJenkins設定の構成を自動化する方法です。たとえば、ジェンキンとクレデンシャルを管理する項目ですか?

私はこれに参照を使用しています:現在、私は手動でこれらの項目を

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

設定しています。私は完全にCIサーバーの作成を自動化したいと思います。これはジェンキンスで可能ですか、人間の介入が必要ですか?

ご協力いただければ幸いです。

答えて

1

シェフを使ってマスターをセットアップし、すべてのプラグインと設定をインストールするためのグルーヴィースクリプトを実行しました。 1つまたは2つのプラグインの横に、完全に自動的に完了しました。他のすべてのプラグインを設定する構文がわかりません。

Jenkins CLIを使用してすべてのプラグインをインストールしました.Jenkins/cli /を参照してください。あなたは

import jenkins.model.* 
import hudson.model.* 

def inst1 = Jenkins.getInstance() 
def desc1 = inst1.getDescriptor("hudson.tools.JDKInstaller") 
println desc1.doPostCredential('[email protected]','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" 
] 

一般的な変数

// 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('[email protected]') 
jenkinsLocationConfiguration.save() 

そこに例の多くは、ちょうどグルーヴィー・ジェンキンスを探してすべてのツールをインストールすることができ、一般的な構成のための

構成。 特定の質問がある場合 お知らせ下さい。

+0

ありがとうございました!これはまさに私が探していたものです。 – Gerb

+0

他にご質問がある場合はお知らせください... –

関連する問題