X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/18e12b0e123fc3e5f344682f884feabc12da0f5a..5fde77fb90280da2c008bb5e8e83f6635b999715:/cookbooks/git/recipes/web.rb diff --git a/cookbooks/git/recipes/web.rb b/cookbooks/git/recipes/web.rb index 0d840bbbd..bb99e482c 100644 --- a/cookbooks/git/recipes/web.rb +++ b/cookbooks/git/recipes/web.rb @@ -1,8 +1,8 @@ # -# Cookbook Name:: git +# Cookbook:: git # Recipe:: web # -# Copyright 2013, OpenStreetMap Foundation +# Copyright:: 2013, OpenStreetMap Foundation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -21,31 +21,50 @@ include_recipe "apache" package "gitweb" +apache_module "cgid" apache_module "rewrite" -git_directory = node[:git][:directory] +git_site = node[:git][:host] template "/etc/gitweb.conf" do source "gitweb.conf.erb" owner "root" group "root" - mode 0o644 + mode "644" end -ssl_certificate node[:git][:host] do - domains [node[:git][:host]] + Array(node[:git][:aliases]) - notifies :reload, "service[apache2]" +directory "/srv/#{git_site}" do + owner "root" + group "root" + mode "755" end -apache_site node[:git][:host] do - template "apache.erb" - directory git_directory - variables :aliases => Array(node[:git][:aliases]) +template "/srv/#{git_site}/robots.txt" do + source "robots.txt.erb" + owner "root" + group "root" + mode "644" end -template "#{git_directory}/robots.txt" do - source "robots.txt.erb" +template "/srv/#{git_site}/indextext.html" do + source "indextext.html.erb" owner "root" group "root" - mode 0o644 + mode "644" +end + +ssl_certificate git_site do + domains [git_site] + Array(node[:git][:aliases]) + notifies :reload, "service[apache2]" +end + +private_allowed = search(:node, node[:git][:private_nodes]).collect do |n| + n.ipaddresses(:role => :external) +end.flatten + +apache_site git_site do + template "apache.erb" + directory "/srv/#{git_site}" + variables :aliases => Array(node[:git][:aliases]), + :private_allowed => private_allowed end