diff --git a/software/gitlab/instance-gitlab.cfg.in b/software/gitlab/instance-gitlab.cfg.in index e2613f165998334d3b967ec29531f0629728d9cd..0e258bac9ee25780d9d6053b47bf3f21dada90ba 100644 --- a/software/gitlab/instance-gitlab.cfg.in +++ b/software/gitlab/instance-gitlab.cfg.in @@ -1,6 +1,7 @@ # GitLab instance # NOTE instance/software layout is inspired by gitlab omnibus # TODO last updated for gitlab-omnibus vXXXX +# TODO all services are interconnected via unix sockets: write why / more [buildout] extends = {{ gitlab_parameters_cfg }} parts = @@ -8,14 +9,19 @@ parts = # promise TODO publish-instance-info - - gitlab-rails - gitlab-rake - gitlab-unicorn - gitlab-sidekiq +# gitlab-<prog> +# ? unicorn_rails, mailroom, ri +{% set gitlab_progv = 'rails rake unicorn sidekiq' .split() %} +{% for prog in gitlab_progv %} + gitlab-{{ prog }} +{% endfor %} gitlab-root-shadow +# service-gitlab-workhorse +# service-gitlab-unicorn +# service-gitlab-sidekiq + service-nginx service-postgresql service-redis @@ -91,7 +97,6 @@ promise = ${:etc}/promise # gitlab: etc/ log/ ... # TODO var/run/ (for *.pid .lock) -# XXX do we need gitlab/ subdir for all that? (services are already separated into different slappartX) [gitlab] recipe = slapos.cookbook:mkdirectory etc = ${directory:etc}/gitlab @@ -121,6 +126,11 @@ extensions = jinja2.ext.do mode = 0640 import-list = rawfile macrolib.cfg.in {{ macrolib_cfg_in }} +context = + raw autogenerated # This file was autogenerated. (DO NOT EDIT - changes will be lost) + ${:context-extra} + + # TODO move common context parameters here (= common) @@ -131,14 +141,14 @@ rendered= ${gitlab:etc}/${:_buildout_section_name_} [database.yml] <= gitlab-etc-template template= {{ database_yml_in }} -context = +context-extra = section gitlab_backend gitlab-backend section pgsql service-postgresql [gitlab.yml] <= gitlab-etc-template template= {{ gitlab_yml_in }} -context = +context-extra = section gitlab gitlab section gitlab_backend gitlab-backend section instance_parameter instance-parameter @@ -146,19 +156,19 @@ context = [resque.yml] <= gitlab-etc-template template= {{ resque_yml_in }} -context = +context-extra = section redis service-redis [smtp_settings.rb] <= gitlab-etc-template template= {{ smtp_settings_rb_in }} -context = +context-extra = section instance_parameter instance-parameter [rack_attack.rb] <= gitlab-etc-template template = {{ rack_attack_rb_in }} -context = +context-extra = section instance_parameter instance-parameter @@ -169,7 +179,7 @@ rendered= ${nginx:etc}/${:_buildout_section_name_} [nginx.conf] <= nginx-etc-template template= {{ nginx_conf_in }} -context = +context-extra = section instance_parameter instance-parameter section gitlab_backend gitlab-backend section directory directory @@ -179,7 +189,7 @@ context = [nginx-gitlab-http.conf] <= nginx-etc-template template= {{ nginx_gitlab_http_conf_in }} -context = +context-extra = section instance_parameter instance-parameter section gitlab_backend gitlab-backend section nginx nginx @@ -189,10 +199,7 @@ context = # 3. bin/ -# gitlab-rails -# gitlab-rake -# gitlab-unicorn -# gitlab-sidekiq +# gitlab-<prog> [gitlab-bin] recipe = slapos.cookbook:wrapper wrapper-path = ${directory:bin}/${:_buildout_section_name_} @@ -204,38 +211,18 @@ environment = # XXX here vvv ? SIDEKIQ_MEMORY_KILLER_MAX_RSS = 1000000 -[gitlab-rails] -<= gitlab-bin -# NOTE sys.argv[1:] implicityly appended -command-line = - {{ bundler_4gitlab }} exec sh -c - 'cd ${gitlab-root-shadow:location} && rails "$@"' rails - -[gitlab-rake] -<= gitlab-bin -# NOTE sys.argv[1:] implicityly appended -command-line = - {{ bundler_4gitlab }} exec sh -c - 'cd ${gitlab-root-shadow:location} && rake "$@"' rake - -[gitlab-unicorn] -<= gitlab-bin # NOTE sys.argv[1:] implicityly appended command-line = {{ bundler_4gitlab }} exec sh -c - 'cd ${gitlab-root-shadow:location} && unicorn "$@"' unicorn + 'cd ${gitlab-root-shadow:location} && ${:prog} "$@"' ${:prog} -[gitlab-sidekiq] +{% for prog in gitlab_progv %} +[gitlab-{{ prog }}] <= gitlab-bin -# NOTE sys.argv[1:] implicityly appended -command-line = - {{ bundler_4gitlab }} exec sh -c - 'cd ${gitlab-root-shadow:location} && sidekiq "$@"' sidekiq +prog = {{ prog }} +{% endfor %} -# # TODO -> service/ -# [gitlab-unicorn] -# <= gitlab-bin # Gitlab/Rails operation is tighted that config/ lives inside code, which goes @@ -370,6 +357,12 @@ ipv6 = ::1 port = 0 +######################## +# gitlab-workhorse # +######################## +# TODO + + ###################### # Nginx frontend # ###################### diff --git a/software/gitlab/template/database.yml.in b/software/gitlab/template/database.yml.in index 0a2f3294487b5dfeaeea260175d79ff7de718362..b98805052c3d8f5231be4aa447fed9f7b413c6c6 100644 --- a/software/gitlab/template/database.yml.in +++ b/software/gitlab/template/database.yml.in @@ -1,4 +1,4 @@ -# @autogenerated XXX +{{ autogenerated }} # see: # https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/database.yml.postgresql # https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/database.yml.erb diff --git a/software/gitlab/template/gitlab.yml.in b/software/gitlab/template/gitlab.yml.in index cc644e637302951be244a14d04069bde67f8f25a..d45313c9624987a630ac576a8a75615e6d96f4f4 100644 --- a/software/gitlab/template/gitlab.yml.in +++ b/software/gitlab/template/gitlab.yml.in @@ -1,4 +1,4 @@ -# @autogenerated XXX +{{ autogenerated }} # see: # https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/gitlab.yml.example # https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/gitlab.yml.erb diff --git a/software/gitlab/template/nginx-gitlab-http.conf.in b/software/gitlab/template/nginx-gitlab-http.conf.in index c6a067a847ec64bc26f762069cb5539f9acdadc0..779c82fec3da1d9a470f29d7df9b6b1a336b401c 100644 --- a/software/gitlab/template/nginx-gitlab-http.conf.in +++ b/software/gitlab/template/nginx-gitlab-http.conf.in @@ -1,4 +1,4 @@ -# @autogenerated XXX +{{ autogenerated }} # see: # https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/nginx-gitlab-http.conf.erb # (last updated for omnibus-gitlab 8.1.0+rc1.ce.0-24-g3021ed9) diff --git a/software/gitlab/template/nginx.conf.in b/software/gitlab/template/nginx.conf.in index 53b4886b3d726cfbc8627afbf8118706ceaacadf..621ec093e957d7e748e050ab31ebd0cf2e18e5bd 100644 --- a/software/gitlab/template/nginx.conf.in +++ b/software/gitlab/template/nginx.conf.in @@ -1,4 +1,4 @@ -# @autogenerated XXX +{{ autogenerated }} # see: # https://gitlab.com/gitlab-org/gitlab-ce/blob/master/lib/support/nginx/gitlab-ssl # https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/nginx.conf.erb diff --git a/software/gitlab/template/rack_attack.rb.in b/software/gitlab/template/rack_attack.rb.in index 20f4557f01a8f9ce27738c659c271a374cfad611..96c454bc56e457a932730fbc2ade19eca871e837 100644 --- a/software/gitlab/template/rack_attack.rb.in +++ b/software/gitlab/template/rack_attack.rb.in @@ -1,4 +1,4 @@ -# @autogenerated +{{ autogenerated }} # see: # https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/initializers/rack_attack.rb.example # https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/rack_attack.rb.erb diff --git a/software/gitlab/template/resque.yml.in b/software/gitlab/template/resque.yml.in index 9812ed168b6eb795ff298d74cae27fdb86f90ece..49bd082a513cb72a1ea9dce276ccedb62a6c2147 100644 --- a/software/gitlab/template/resque.yml.in +++ b/software/gitlab/template/resque.yml.in @@ -1,6 +1,7 @@ -# @autogenerated XXX +{{ autogenerated }} # see: # https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/resque.yml.example # https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/resque.yml.erb +# (last udpdated for 8.1.0+rc1.ce.0-77-ge349060) production: unix://{{ redis.unixsocket }} diff --git a/software/gitlab/template/smtp_settings.rb.in b/software/gitlab/template/smtp_settings.rb.in index 9ab6b0bcfa0ce9cb983b3913115da5846d0ffec8..6f93f463344dd587e0e584cd1d83fd24443fd274 100644 --- a/software/gitlab/template/smtp_settings.rb.in +++ b/software/gitlab/template/smtp_settings.rb.in @@ -1,4 +1,4 @@ -# @autogenerated +{{ autogenerated }} # see: # https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/initializers/smtp_settings.rb.sample # https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/smtp_settings.rb.erb diff --git a/software/gitlab/template/unicorn.rb.in b/software/gitlab/template/unicorn.rb.in index f310f760e07503e30701577e92c91bc1b091c6fd..8e3cef43e760a6c66d16f42d251d2b4f472de56c 100644 --- a/software/gitlab/template/unicorn.rb.in +++ b/software/gitlab/template/unicorn.rb.in @@ -1,10 +1,12 @@ -# @autogenerated XXX +{{ autogenerated }} # see: # https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/unicorn.rb.example # https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/unicorn.rb.example.development # https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/unicorn.rb.erb # (last updated for omnibus-gitlab 8.1.0+rc1.ce.0-24-g3021ed9 XXX check) +# XXX import cfg + # What ports/sockets to listen on, and what options for them. listen "{XXX:unicorn-host:port}", :tcp_nopush => ${instance-parameters:configuration.unicorn_tcp_nopush}