# GitLab "switch-softwaretype" instance
[buildout]
parts = switch-softwaretype

# std stuff for slapos instance
eggs-directory = ${buildout:eggs-directory}
develop-eggs-directory = ${buildout:develop-eggs-directory}
offline = true


[switch-softwaretype]
recipe = slapos.cookbook:softwaretype
default = $${instance-gitlab.cfg:rendered}
# TODO -export, -import, -pull-backup


[instance-gitlab.cfg]
recipe  = slapos.recipe.template:jinja2
mode    = 0644
template= ${instance-gitlab.cfg.in:target}
rendered= $${buildout:directory}/instance-gitlab.cfg
context =
    key eggs_directory          buildout:eggs-directory
    key develop_eggs_directory  buildout:develop-eggs-directory
    raw gitlab_repository_location          ${gitlab-repository:location}
    raw gitlab_shell_repository_location    ${gitlab-shell-repository:location}

# program binaries
    raw bundler_4gitlab             ${bundler-4gitlab:bundle}
    raw dcron_bin                   ${dcron-output:crond}
    raw git                         ${git:location}/bin/git
    raw gunzip_bin                  ${gzip:location}/bin/gunzip
    raw gzip_bin                    ${gzip:location}/bin/gzip
    raw logrotate_bin               ${logrotate:location}/usr/sbin/logrotate
    raw postgresql_location         ${postgresql92:location}
    raw redis_binprefix             ${redis28:location}/bin

# config files
    raw config_ru_in                ${config.ru.in:target}
    raw database_yml_in             ${database.yml.in:target}
    raw gitlab_shell_config_yml_in  ${gitlab-shell-config.yml.in:target}
    raw gitlab_yml_in               ${gitlab.yml.in:target}
    raw rack_attack_rb_in           ${rack_attack.rb.in:target}
    raw resque_yml_in               ${resque.yml.in:target}
    raw smtp_settings_rb_in         ${smtp_settings.rb.in:target}
    raw unicorn_rb_in               ${unicorn.rb.in:target}
