OSDN Git Service

bug fix.
[metasearch/grid-chef-repo.git] / roles / jenkins.rb
1 name 'jenkins'
2 description 'Jenkins'
3
4 run_list(
5   'recipe[ssl_cert::server_key_pairs]',
6   'role[docker]',
7   'recipe[jenkins-grid::docker-compose]',
8 )
9
10 #env_run_lists()
11
12 #default_attributes()
13
14 jenkins_cn = 'jenkins.io.example.com'
15
16 override_attributes(
17   'jenkins-grid' => {
18     'with_ssl_cert_cookbook' => true,
19     'ssl_cert' => {
20       'common_name' => jenkins_cn,
21     },
22     'docker-compose' => {
23       'config' => {
24         # Version 2 docker-compose format
25         'version' => '2',
26         'services' => {
27           'jenkins' => {
28             'restart' => 'always',
29             'image' => 'jenkins:2.19.4',
30             'expose' => [
31               '8083',  # for https        
32             'ports' => [
33               #'8080:8080',
34               '8083:8083',
35               '50000:50000',
36             ],
37             'environment' => {
38               'JENKINS_OPTS' => [
39                 '--httpPort=-1 --httpsPort=8083',
40                 # These options will be set by the jenkins-grid::docker-compose recipe automatically.
41                 #'--httpsCertificate=/var/lib/jenkins/server.crt',
42                 #'--httpsPrivateKey=/var/lib/jenkins/server.key',
43               ].join(' '),
44             },
45             # These volumes will be set by the jenkins-grid::docker-compose recipe automatically.
46             #'volumes' => [
47             #  "#{node['jenkins-grid']['docker-compose']['jenkins_home']['path']}:/var/jenkins_home",
48             #  "#{server_cert_path(node['jenkins-grid']['ssl_cert']['common_name'])}:/var/lib/jenkins/server.crt:ro",
49             #  "#{node['jenkins-grid']['docker-compose']['app_dir']}/certs/server.key:/var/lib/jenkins/server.key:ro",
50             #],
51           },
52         },
53       },
54     },
55   },
56   'ssl_cert' => {
57     'common_names' => [
58       jenkins_cn,
59     ],
60   }
61 )