X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/55fc22bb3b3c7adfd60c2c4865e52d71c7de3572..59ded59a740f2e4cc627ca185fac3a47a46529fd:/cookbooks/git/recipes/web.rb diff --git a/cookbooks/git/recipes/web.rb b/cookbooks/git/recipes/web.rb index 5d298e7ca..468074e2c 100644 --- a/cookbooks/git/recipes/web.rb +++ b/cookbooks/git/recipes/web.rb @@ -1,14 +1,14 @@ # -# 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. # You may obtain a copy of the License at # -# http://www.apache.org/licenses/LICENSE-2.0 +# https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, @@ -17,13 +17,13 @@ # limitations under the License. # -include_recipe "apache::ssl" +include_recipe "apache" package "gitweb" apache_module "rewrite" -git_directory = node[:git][:directory] +git_site = node[:git][:host] template "/etc/gitweb.conf" do source "gitweb.conf.erb" @@ -32,20 +32,31 @@ template "/etc/gitweb.conf" do mode 0o644 end -ssl_certificate node[:git][:host] do - domains node[:git][:host] - fallback_certificate "openstreetmap" - notifies :reload, "service[apache2]" -end - -apache_site node[:git][:host] do - template "apache.erb" - directory git_directory +directory "/srv/#{git_site}" do + owner "root" + group "root" + mode 0o755 end -template "#{git_directory}/robots.txt" do +template "/srv/#{git_site}/robots.txt" do source "robots.txt.erb" owner "root" group "root" mode 0o644 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