X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/a68415b8f2bf106b6ea5948b0605c897b516ef4f..8ccf941a82940d016e9c68bdf0c29e190953c7f7:/cookbooks/git/recipes/web.rb diff --git a/cookbooks/git/recipes/web.rb b/cookbooks/git/recipes/web.rb index 5a59e1c4b..7e1f38cc2 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,29 +17,46 @@ # 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" owner "root" group "root" - mode 0o644 + mode "644" end -apache_site node[:git][:host] do - template "apache.erb" - directory git_directory +directory "/srv/#{git_site}" do + owner "root" + group "root" + mode "755" end -template "#{git_directory}/robots.txt" do +template "/srv/#{git_site}/robots.txt" do source "robots.txt.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