OSDN Git Service

add the screwdriver-all-on-docker role.
[metasearch/grid-chef-repo.git] / roles / screwdriver-all-on-docker.rb
1 #
2 # Copyright 2018, whitestar
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 #     http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15 #
16
17 name 'screwdriver-all-on-docker'
18 description 'Screwdriver with all components on Docker'
19
20 # Default ports
21 #ui_port     = '9000'
22 #api_port    = '9001'
23 #store_port  = '9002'
24
25 run_list(
26   'role[docker]',
27   'recipe[screwdriver::docker-compose]',
28 )
29
30 override_attributes(
31   'docker-grid' => {
32     'engine' => {
33       #'skip_setup' => true,  # default: false
34     },
35     'compose' => {
36       #'skip_setup' => true,  # default: false
37     },
38   },
39   'screwdriver' => {
40     'api' => {
41       'config' => {
42         'scms' => {
43           # **REQUIRED**: SCM settings
44 =begin
45           'github.com' => {  # id and display name
46             'plugin' => 'github',
47             'config' => {
48               # These 3 secrets should be set by the following `['screwdriver']['api']['scms_vault_items']` attribute.
49               'oauthClientId' => 'YOU-PROBABLY-WANT-SOMETHING-HERE',  # The client id used for OAuth with github. GitHub OAuth (https://developer.github.com/v3/oauth/)
50               'oauthClientSecret' => 'AGAIN-SOMETHING-HERE-IS-USEFUL',  # The client secret used for OAuth with github
51               'secret' => 'SUPER-SECRET-SIGNING-THING',  # Secret to add to GitHub webhooks so that we can validate them
52               #'gheHost' => 'github.screwdriver.cd',  # [Optional] GitHub enterprise host
53               'username' => 'sd-buildbot',  # [Optional] Username for code checkout
54               'email' => 'dev-null@screwdriver.cd',  # [Optional] Email for code checkout
55               'privateRepo' => false,  # [Optional] Set to true to support private repo; will need read and write access to public and private repos (https://developer.github.com/v3/oauth/#scopes)
56             },
57           },
58 =end
59         },
60       },
61     },
62     'store' => {
63       'backend' => {
64         'minio',
65       },
66     },
67     'docker-compose' => {
68       'config' => {
69         'services' => {
70           'api' => {
71             'ports' => [
72               #"#{api_port}:80",
73             ],
74             'environment' => {
75               #'NODE_TLS_REJECT_UNAUTHORIZED' => '0',  # for self-signed cetificates
76               # The following variables will be set by the screwdriver::docker-compose recipe automatically.
77               #'ECOSYSTEM_UI' => "http://#{node['fqdn']}:#{ui_port}",
78               #'ECOSYSTEM_STORE' => "http://#{node['fqdn']}:#{store_port}",
79               'DATASTORE_SEQUELIZE_DIALECT' => 'mysql',  # or 'postgres'
80             },
81           },
82           'ui' => {
83             'ports' => [
84               #"#{ui_port}:80",
85             ],
86             'environment' => {
87               # These variables will be set by the screwdriver::docker-compose recipe automatically.
88               #'ECOSYSTEM_API' => "http://#{node['fqdn']}:#{api_port}",
89               #'ECOSYSTEM_STORE' => "http://#{node['fqdn']}:#{store_port}",
90             },
91           },
92           'store' => {
93             'ports' => [
94               #"#{store_port}:80",
95             ],
96             'environment' => {
97               # This variable will be set by the screwdriver::docker-compose recipe automatically.
98               #'ECOSYSTEM_UI' => "http://#{node['fqdn']}:#{ui_port}",
99             },
100           },
101         },
102       },
103     },
104   },
105 )