OSDN Git Service

fixes format version detection of a local `docker-compose.yml`.
[metasearch/grid-chef-repo.git] / cookbooks / concourse-ci / README.md
index 0653e20..87a3f66 100644 (file)
@@ -37,7 +37,7 @@ This cookbook sets up a Concourse CI service by Docker Compose.
 
 |Key|Type|Description, example|Default|
 |:--|:--|:--|:--|
-|`['concourse-ci']['fly']['version']`|String||`'2.7.0'`|
+|`['concourse-ci']['fly']['version']`|String||`'3.3.4'`|
 |`['concourse-ci']['fly']['release_url']`|String||`"https://github.com/concourse/concourse/releases/download/v#{node['concourse-ci']['fly']['version']}/fly_linux_amd64"`|
 |`['concourse-ci']['fly']['release_checksum']`|String||`nil`|
 |`['concourse-ci']['fly']['auto_upgrade']`|Boolean||`false`|
@@ -60,7 +60,7 @@ This cookbook sets up a Concourse CI service by Docker Compose.
 |`['concourse-ci']['docker-compose']['web_oauth_client_id_vault_item']`|Hash|See `attributes/default.rb`|`{}`|
 |`['concourse-ci']['docker-compose']['web_oauth_client_secret_vault_item']`|Hash|See `attributes/default.rb`|`{}`|
 |`['concourse-ci']['docker-compose']['ssh_keys_reset']`|String|Resets all SSH keys forcely.|`false`|
-|`['concourse-ci']['docker-compose']['config_format_version']`|String|Read only. `docker-compose.yml` format version. Only version 1 is supported now.|`'1'`|
+|`['concourse-ci']['docker-compose']['config_format_version']`|String|`docker-compose.yml` format version. `'1'` or `'2'`|`'1'`|
 |`['concourse-ci']['docker-compose']['config']`|Hash|`docker-compose.yml` configurations.|See `attributes/default.rb`|
 
 ## Usage
@@ -92,14 +92,14 @@ run_list(
   'recipe[concourse-ci::docker-compose]',
 )
 
-image = 'concourse/concourse:2.7.0'
+image = 'concourse/concourse:latest'
 port = '18080'
 
 override_attributes(
   'concourse-ci' => {
     'docker-compose' => {
+      # Version 1 docker-compose format (default)
       'config' => {
-        # Version 1 docker-compose format
         'concourse-web' => {
           'image' => image,
           'ports' => [
@@ -122,6 +122,35 @@ override_attributes(
           #],
         },
       },
+=begin
+      # Version 2 docker-compose format
+      'config_format_version' => '2',
+      'config' => {
+        'services' => {
+          'concourse-web' => {
+            'image' => image,
+            'ports' => [
+              "#{port}:8080",
+            ],
+            #'volumes' => [
+            #  # These volumes will be set by the concourse-ci::docker-compose recipe automatically.
+            #  #"#{node['concourse-ci']['docker-compose']['web_keys_dir']}:/concourse-keys",
+            #],
+            'environment' => {
+              'CONCOURSE_EXTERNAL_URL' => "http://192.168.1.3:#{port}",
+              #'CONCOURSE_RESOURCE_CHECKING_INTERVAL' => '1m',  # default
+            },
+          },
+          'concourse-worker' => {
+            'image' => image,
+            #'volumes' => [
+            #  # These volumes will be set by the concourse-ci::docker-compose recipe automatically.
+            #  #"#{node['concourse-ci']['docker-compose']['worker_keys_dir']}:/concourse-keys",
+            #],
+          },
+        },
+      },
+=end
     },
   },
 )
@@ -134,7 +163,7 @@ name 'concourse-with-ssl'
 description 'Concourse with SSL'
 
 run_list(
-  'recipe[ssl_cert::server_key_pairs]',
+  #'recipe[ssl_cert::server_key_pairs]',  # concourse-ci cookbook < 0.2.2
   'role[docker]',
   'recipe[concourse-ci::docker-compose]',
 )
@@ -145,9 +174,9 @@ cn = 'concourse.io.example.com'
 
 override_attributes(
   'ssl_cert' => {
-    'common_names' => [
-      cn,
-    ],
+    #'common_names' => [
+    #  cn,  # concourse-ci cookbook < 0.2.3
+    #],
   },
   'concourse-ci' => {
     'with_ssl_cert_cookbook' => true,
@@ -196,13 +225,13 @@ name 'concourse-with-oauth'
 description 'Concourse with OAuth'
 
 run_list(
-  'recipe[ssl_cert::ca_certs]',
+  #'recipe[ssl_cert::ca_certs]',  # concourse-ci cookbook < 0.2.2
   'recipe[ssl_cert::server_key_pairs]',
   'role[docker]',
   'recipe[concourse-ci::docker-compose]',
 )
 
-image = 'concourse/concourse:2.7.0'
+image = 'concourse/concourse:latest'
 port = '18443'
 ca_name = 'grid_ca'
 cn = 'concourse.io.example.com'
@@ -210,12 +239,12 @@ gitlab_cn = 'gitlab.io.example.com'
 
 override_attributes(
   'ssl_cert' => {
-    'ca_names' => [
-      ca_name,
-    ],
-    'common_names' => [
-      cn,
-    ],
+    #'ca_names' => [
+    #  ca_name,  # concourse-ci cookbook < 0.2.3
+    #],
+    #'common_names' => [
+    #  cn,  # concourse-ci cookbook < 0.2.3
+    #],
   },
   'concourse-ci' => {
     'with_ssl_cert_cookbook' => true,
@@ -270,19 +299,19 @@ override_attributes(
 - create vault items.
 
 ```text
-$ ruby -rjson -e 'puts JSON.generate({"private" => File.read("concourse_io_example_com.prod.key")})' \
-> > ~/tmp/concourse_io_example_com.prod.key.json
+$ ruby -rjson -e 'puts JSON.generate({"private" => File.read("concourse.io.example.com.prod.key")})' \
+> > ~/tmp/concourse.io.example.com.prod.key.json
 
-$ ruby -rjson -e 'puts JSON.generate({"public" => File.read("concourse_io_example_com.prod.crt")})' \
-> > ~/tmp/concourse_io_example_com.prod.crt.json
+$ ruby -rjson -e 'puts JSON.generate({"public" => File.read("concourse.io.example.com.prod.crt")})' \
+> > ~/tmp/concourse.io.example.com.prod.crt.json
 
 $ cd $CHEF_REPO_PATH
 
 $ knife vault create ssl_server_keys concourse.io.example.com.prod \
-> --json ~/tmp/concourse_io_example_com.prod.key.json
+> --json ~/tmp/concourse.io.example.com.prod.key.json
 
 $ knife vault create ssl_server_certs concourse.io.example.com.prod \
-> --json ~/tmp/concourse_io_example_com.prod.crt.json
+> --json ~/tmp/concourse.io.example.com.prod.crt.json
 ```
 
 - grant reference permission to the Concourse host
@@ -296,15 +325,15 @@ $ knife vault update ssl_server_certs concourse.io.example.com.prod -S 'name:con
 
 ```ruby
 run_list(
-  'recipe[ssl_cert::server_key_pairs]',
+  #'recipe[ssl_cert::server_key_pairs]',  # concourse-ci cookbook < 0.2.2
   'recipe[concourse-ci::docker-compose]',
 )
 
 override_attributes(
   'ssl_cert' => {
-    'common_names' => [
-      'concourse.io.example.com',
-    ],
+    #'common_names' => [
+    #  'concourse.io.example.com',  # concourse-ci cookbook < 0.2.3
+    #],
   },
   'concourse-ci' => {
     'with_ssl_cert_cookbook' => true,