diff --git a/files/gitlab-cookbooks/gitlab/attributes/default.rb b/files/gitlab-cookbooks/gitlab/attributes/default.rb index 2765cba..1adfebf 100644 --- a/files/gitlab-cookbooks/gitlab/attributes/default.rb +++ b/files/gitlab-cookbooks/gitlab/attributes/default.rb @@ -44,6 +44,7 @@ default['gitlab']['user']['git_user_email'] = "gitlab@#{node['fqdn']}" default['gitlab']['gitlab-rails']['dir'] = "/var/opt/gitlab/gitlab-rails" default['gitlab']['gitlab-rails']['log_directory'] = "/var/log/gitlab/gitlab-rails" default['gitlab']['gitlab-rails']['environment'] = 'production' +default['gitlab']['gitlab-rails']['env'] = {} default['gitlab']['gitlab-rails']['internal_api_url'] = nil default['gitlab']['gitlab-rails']['uploads_directory'] = "/var/opt/gitlab/gitlab-rails/uploads" diff --git a/files/gitlab-cookbooks/gitlab/recipes/gitlab-rails.rb b/files/gitlab-cookbooks/gitlab/recipes/gitlab-rails.rb index f4573ee..a68016c 100644 --- a/files/gitlab-cookbooks/gitlab/recipes/gitlab-rails.rb +++ b/files/gitlab-cookbooks/gitlab/recipes/gitlab-rails.rb @@ -148,7 +148,11 @@ directory node['gitlab']['gitlab-rails']['satellites_path'] do recursive true end -env_vars = node['gitlab']['gitlab-rails']['env'] || {} +env_vars = { + 'HOME' => node['gitlab']['user']['home'], + 'BUNDLE_GEMFILE' => File.join(gitlab_rails_source_dir, 'Gemfile') +}.merge(node['gitlab']['gitlab-rails']['env']) + env_vars.each do |key, value| file File.join(gitlab_rails_env_dir, key) do owner node['gitlab']['user']['username'] diff --git a/files/gitlab-cookbooks/gitlab/templates/default/sv-sidekiq-run.erb b/files/gitlab-cookbooks/gitlab/templates/default/sv-sidekiq-run.erb index df43698..4d1474c 100644 --- a/files/gitlab-cookbooks/gitlab/templates/default/sv-sidekiq-run.erb +++ b/files/gitlab-cookbooks/gitlab/templates/default/sv-sidekiq-run.erb @@ -4,4 +4,4 @@ cd <%= node['gitlab']['gitlab-rails']['dir'] %>/working exec 2>&1 <%= render("mount_point_check.erb") %> -exec chpst -e <%= node['gitlab']['gitlab-rails']['dir'] %>/etc/env -P -U <%= node['gitlab']['user']['username'] %> -u <%= node['gitlab']['user']['username'] %> /usr/bin/env BUNDLE_GEMFILE=/opt/gitlab/embedded/service/gitlab-rails/Gemfile HOME="<%= node['gitlab']['user']['home'] %>" /opt/gitlab/embedded/bin/bundle exec sidekiq -q post_receive -q mailer -q system_hook -q project_web_hook -q gitlab_shell -q common -q default -e <%= node['gitlab']['gitlab-rails']['environment'] %> -r /opt/gitlab/embedded/service/gitlab-rails +exec chpst -e <%= node['gitlab']['gitlab-rails']['dir'] %>/etc/env -P -U <%= node['gitlab']['user']['username'] %> -u <%= node['gitlab']['user']['username'] %> /opt/gitlab/embedded/bin/bundle exec sidekiq -q post_receive -q mailer -q system_hook -q project_web_hook -q gitlab_shell -q common -q default -e <%= node['gitlab']['gitlab-rails']['environment'] %> -r /opt/gitlab/embedded/service/gitlab-rails diff --git a/files/gitlab-cookbooks/gitlab/templates/default/sv-unicorn-run.erb b/files/gitlab-cookbooks/gitlab/templates/default/sv-unicorn-run.erb index 0b20cf5..f0006e4 100644 --- a/files/gitlab-cookbooks/gitlab/templates/default/sv-unicorn-run.erb +++ b/files/gitlab-cookbooks/gitlab/templates/default/sv-unicorn-run.erb @@ -65,7 +65,7 @@ function is_unicorn function start_unicorn_master { <%= render("mount_point_check.erb") %> - chpst -e <%= node['gitlab']['gitlab-rails']['dir'] %>/etc/env -P -U <%= node['gitlab']['user']['username'] %> -u <%= node['gitlab']['user']['username'] %> /usr/bin/env HOME="<%= node['gitlab']['user']['home'] %>" /opt/gitlab/embedded/bin/bundle exec unicorn -D -E <%= node['gitlab']['gitlab-rails']['environment'] %> -c <%= File.join(node['gitlab']['gitlab-rails']['dir'], "etc", "unicorn.rb") %> /opt/gitlab/embedded/service/gitlab-rails/config.ru + chpst -e <%= node['gitlab']['gitlab-rails']['dir'] %>/etc/env -P -U <%= node['gitlab']['user']['username'] %> -u <%= node['gitlab']['user']['username'] %> /opt/gitlab/embedded/bin/bundle exec unicorn -D -E <%= node['gitlab']['gitlab-rails']['environment'] %> -c <%= File.join(node['gitlab']['gitlab-rails']['dir'], "etc", "unicorn.rb") %> /opt/gitlab/embedded/service/gitlab-rails/config.ru } function trap_signals -- libgit2 0.21.2