旧ブログ

sambaiz.net に引っ越しました

chef soloでjenkinsにgitプラグインを入れる

前回の続き。Jenkinsが動くようになった。gitと、Jenkinsのgitプラグインを入れる。

Git

$ knife cookbook create git -o site-cookbooks/

site-cookbooks/git/recipes/default.rb

yum_package "git" do
  action :install
end

execute "yum-update" do
  user "root"
  command "yum -y update"
  action :run
end

nodes/chef_test.json

{"run_list":[
    "java",
    "jenkins",
    "simple_iptables",
    "iptables",
    "git"]}

で実行。

JenkinsのGitプラグイン

Jenkins CLIで操作する。

f:id:sambaiz:20140520221059p:plain

追加

site-cookbooks/jenkins/recipes/default.rb

execute "install-jenkins-repo" do
  command <<-_EOH_
    wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
    rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
  _EOH_
  action :run
  not_if { ::File.exists?("/etc/yum.repos.d/jenkins.repo") }
end

package "jenkins" do
  action :install
end
 
service "jenkins" do
  action [:enable, :start]
end

JENKINS_URL = "http://localhost:8080"

execute "install-git-plugin" do
  user "root"
  command <<-_EOH_
    wget -O jenkins-cli.jar #{JENKINS_URL}/jnlpJars/jenkins-cli.jar
    java -jar jenkins-cli.jar -s #{JENKINS_URL} install-plugin git
    java -jar jenkins-cli.jar -s #{JENKINS_URL} safe-restart
  _EOH_
  action :run
end

で実行。gitが選べるようになった。

f:id:sambaiz:20140520212158p:plain

続く