Commit 509818df authored by Kirill Smelkov's avatar Kirill Smelkov

.

parent 1cd49f99
# GitLab instance # GitLab instance
# NOTE instance/software layout is inspired by gitlab omnibus # NOTE instance/software layout is inspired by gitlab omnibus
# TODO last updated for gitlab-omnibus vXXXX # TODO last updated for gitlab-omnibus vXXXX
# TODO all services are interconnected via unix sockets: write why / more
[buildout] [buildout]
extends = {{ gitlab_parameters_cfg }} extends = {{ gitlab_parameters_cfg }}
parts = parts =
...@@ -8,14 +9,19 @@ parts = ...@@ -8,14 +9,19 @@ parts =
# promise TODO # promise TODO
publish-instance-info publish-instance-info
# gitlab-<prog>
gitlab-rails # ? unicorn_rails, mailroom, ri
gitlab-rake {% set gitlab_progv = 'rails rake unicorn sidekiq' .split() %}
gitlab-unicorn {% for prog in gitlab_progv %}
gitlab-sidekiq gitlab-{{ prog }}
{% endfor %}
gitlab-root-shadow gitlab-root-shadow
# service-gitlab-workhorse
# service-gitlab-unicorn
# service-gitlab-sidekiq
service-nginx service-nginx
service-postgresql service-postgresql
service-redis service-redis
...@@ -91,7 +97,6 @@ promise = ${:etc}/promise ...@@ -91,7 +97,6 @@ promise = ${:etc}/promise
# gitlab: etc/ log/ ... # gitlab: etc/ log/ ...
# TODO var/run/ (for *.pid .lock) # TODO var/run/ (for *.pid .lock)
# XXX do we need gitlab/ subdir for all that? (services are already separated into different slappartX)
[gitlab] [gitlab]
recipe = slapos.cookbook:mkdirectory recipe = slapos.cookbook:mkdirectory
etc = ${directory:etc}/gitlab etc = ${directory:etc}/gitlab
...@@ -121,6 +126,11 @@ extensions = jinja2.ext.do ...@@ -121,6 +126,11 @@ extensions = jinja2.ext.do
mode = 0640 mode = 0640
import-list = import-list =
rawfile macrolib.cfg.in {{ macrolib_cfg_in }} 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) # TODO move common context parameters here (= common)
...@@ -131,14 +141,14 @@ rendered= ${gitlab:etc}/${:_buildout_section_name_} ...@@ -131,14 +141,14 @@ rendered= ${gitlab:etc}/${:_buildout_section_name_}
[database.yml] [database.yml]
<= gitlab-etc-template <= gitlab-etc-template
template= {{ database_yml_in }} template= {{ database_yml_in }}
context = context-extra =
section gitlab_backend gitlab-backend section gitlab_backend gitlab-backend
section pgsql service-postgresql section pgsql service-postgresql
[gitlab.yml] [gitlab.yml]
<= gitlab-etc-template <= gitlab-etc-template
template= {{ gitlab_yml_in }} template= {{ gitlab_yml_in }}
context = context-extra =
section gitlab gitlab section gitlab gitlab
section gitlab_backend gitlab-backend section gitlab_backend gitlab-backend
section instance_parameter instance-parameter section instance_parameter instance-parameter
...@@ -146,19 +156,19 @@ context = ...@@ -146,19 +156,19 @@ context =
[resque.yml] [resque.yml]
<= gitlab-etc-template <= gitlab-etc-template
template= {{ resque_yml_in }} template= {{ resque_yml_in }}
context = context-extra =
section redis service-redis section redis service-redis
[smtp_settings.rb] [smtp_settings.rb]
<= gitlab-etc-template <= gitlab-etc-template
template= {{ smtp_settings_rb_in }} template= {{ smtp_settings_rb_in }}
context = context-extra =
section instance_parameter instance-parameter section instance_parameter instance-parameter
[rack_attack.rb] [rack_attack.rb]
<= gitlab-etc-template <= gitlab-etc-template
template = {{ rack_attack_rb_in }} template = {{ rack_attack_rb_in }}
context = context-extra =
section instance_parameter instance-parameter section instance_parameter instance-parameter
...@@ -169,7 +179,7 @@ rendered= ${nginx:etc}/${:_buildout_section_name_} ...@@ -169,7 +179,7 @@ rendered= ${nginx:etc}/${:_buildout_section_name_}
[nginx.conf] [nginx.conf]
<= nginx-etc-template <= nginx-etc-template
template= {{ nginx_conf_in }} template= {{ nginx_conf_in }}
context = context-extra =
section instance_parameter instance-parameter section instance_parameter instance-parameter
section gitlab_backend gitlab-backend section gitlab_backend gitlab-backend
section directory directory section directory directory
...@@ -179,7 +189,7 @@ context = ...@@ -179,7 +189,7 @@ context =
[nginx-gitlab-http.conf] [nginx-gitlab-http.conf]
<= nginx-etc-template <= nginx-etc-template
template= {{ nginx_gitlab_http_conf_in }} template= {{ nginx_gitlab_http_conf_in }}
context = context-extra =
section instance_parameter instance-parameter section instance_parameter instance-parameter
section gitlab_backend gitlab-backend section gitlab_backend gitlab-backend
section nginx nginx section nginx nginx
...@@ -189,10 +199,7 @@ context = ...@@ -189,10 +199,7 @@ context =
# 3. bin/ # 3. bin/
# gitlab-rails # gitlab-<prog>
# gitlab-rake
# gitlab-unicorn
# gitlab-sidekiq
[gitlab-bin] [gitlab-bin]
recipe = slapos.cookbook:wrapper recipe = slapos.cookbook:wrapper
wrapper-path = ${directory:bin}/${:_buildout_section_name_} wrapper-path = ${directory:bin}/${:_buildout_section_name_}
...@@ -204,38 +211,18 @@ environment = ...@@ -204,38 +211,18 @@ environment =
# XXX here vvv ? # XXX here vvv ?
SIDEKIQ_MEMORY_KILLER_MAX_RSS = 1000000 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 # NOTE sys.argv[1:] implicityly appended
command-line = command-line =
{{ bundler_4gitlab }} exec sh -c {{ 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 <= gitlab-bin
# NOTE sys.argv[1:] implicityly appended prog = {{ prog }}
command-line = {% endfor %}
{{ bundler_4gitlab }} exec sh -c
'cd ${gitlab-root-shadow:location} && sidekiq "$@"' sidekiq
# # TODO -> service/
# [gitlab-unicorn]
# <= gitlab-bin
# Gitlab/Rails operation is tighted that config/ lives inside code, which goes # Gitlab/Rails operation is tighted that config/ lives inside code, which goes
...@@ -370,6 +357,12 @@ ipv6 = ::1 ...@@ -370,6 +357,12 @@ ipv6 = ::1
port = 0 port = 0
########################
# gitlab-workhorse #
########################
# TODO
###################### ######################
# Nginx frontend # # Nginx frontend #
###################### ######################
......
# @autogenerated XXX {{ autogenerated }}
# see: # see:
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/database.yml.postgresql # 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 # https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/database.yml.erb
......
# @autogenerated XXX {{ autogenerated }}
# see: # see:
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/gitlab.yml.example # 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 # https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/gitlab.yml.erb
......
# @autogenerated XXX {{ autogenerated }}
# see: # see:
# https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/nginx-gitlab-http.conf.erb # 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) # (last updated for omnibus-gitlab 8.1.0+rc1.ce.0-24-g3021ed9)
......
# @autogenerated XXX {{ autogenerated }}
# see: # see:
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/lib/support/nginx/gitlab-ssl # 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 # https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/nginx.conf.erb
......
# @autogenerated {{ autogenerated }}
# see: # see:
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/initializers/rack_attack.rb.example # 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 # https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/rack_attack.rb.erb
......
# @autogenerated XXX {{ autogenerated }}
# see: # see:
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/resque.yml.example # 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 # 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 }} production: unix://{{ redis.unixsocket }}
# @autogenerated {{ autogenerated }}
# see: # see:
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/initializers/smtp_settings.rb.sample # 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 # https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-cookbooks/gitlab/templates/default/smtp_settings.rb.erb
......
# @autogenerated XXX {{ autogenerated }}
# see: # 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
# https://gitlab.com/gitlab-org/gitlab-ce/blob/master/config/unicorn.rb.example.development # 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 # 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) # (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. # What ports/sockets to listen on, and what options for them.
listen "{XXX:unicorn-host:port}", :tcp_nopush => ${instance-parameters:configuration.unicorn_tcp_nopush} listen "{XXX:unicorn-host:port}", :tcp_nopush => ${instance-parameters:configuration.unicorn_tcp_nopush}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment