X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/34ff9fd8c98de023c344dada734e3e9897d132fe..9ab34285fe68733b1252c730cc6757cfb2dd716b:/cookbooks/web/resources/rails_port.rb diff --git a/cookbooks/web/resources/rails_port.rb b/cookbooks/web/resources/rails_port.rb index 56fd163c3..c650a4c27 100644 --- a/cookbooks/web/resources/rails_port.rb +++ b/cookbooks/web/resources/rails_port.rb @@ -8,7 +8,7 @@ # 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, @@ -28,7 +28,7 @@ property :ruby, String, :default => "2.3" property :directory, String property :user, String property :group, String -property :repository, String, :default => "git://git.openstreetmap.org/rails.git" +property :repository, String, :default => "https://git.openstreetmap.org/public/rails.git" property :revision, String, :default => "live" property :run_migrations, [TrueClass, FalseClass], :default => false property :email_from, String, :default => "OpenStreetMap " @@ -65,6 +65,7 @@ property :mapquest_key, String property :mapzen_valhalla_key, String property :thunderforest_key, String property :totp_key, String +property :csp_enforce, [TrueClass, FalseClass], :default => false property :csp_report_url, String property :piwik_configuration, Hash @@ -85,11 +86,23 @@ action :create do libxml2-dev libxslt1-dev libmemcached-dev + libffi-dev + ] + + package %w[ + pngcrush + advancecomp + optipng + pngquant + jhead + jpegoptim + gifsicle + libjpeg-turbo-progs ] gem_package "bundler#{new_resource.ruby}" do package_name "bundler" - version "1.3.5" + version "1.16.2" gem_binary "gem#{new_resource.ruby}" options "--format-executable" end @@ -147,19 +160,19 @@ action :create do application_yml = edit_file "#{rails_directory}/config/example.application.yml" do |line| line.gsub!(/^( *)server_protocol:.*$/, "\\1server_protocol: \"https\"") - line.gsub!(/^( *)server_url:.*$/, "\\1server_url: \"#{name}\"") + line.gsub!(/^( *)server_url:.*$/, "\\1server_url: \"#{new_resource.site}\"") line.gsub!(/^( *)#publisher_url:.*$/, "\\1publisher_url: \"https://plus.google.com/111953119785824514010\"") line.gsub!(/^( *)support_email:.*$/, "\\1support_email: \"support@openstreetmap.org\"") if new_resource.email_from - line.gsub!(/^( *)email_from:.*$/, "\\1email_from: \"#{email_from}\"") + line.gsub!(/^( *)email_from:.*$/, "\\1email_from: \"#{new_resource.email_from}\"") end line.gsub!(/^( *)email_return_path:.*$/, "\\1email_return_path: \"bounces@openstreetmap.org\"") - line.gsub!(/^( *)status:.*$/, "\\1status: :#{status}") + line.gsub!(/^( *)status:.*$/, "\\1status: :#{new_resource.status}") if new_resource.messages_domain line.gsub!(/^( *)#messages_domain:.*$/, "\\1messages_domain: \"#{new_resource.messages_domain}\"") @@ -252,6 +265,10 @@ action :create do line.gsub!(/^( *)#totp_key:.*$/, "\\1totp_key: \"#{new_resource.totp_key}\"") end + if new_resource.csp_enforce + line.gsub!(/^( *)csp_enforce:.*$/, "\\1csp_enforce: \"#{new_resource.csp_enforce}\"") + end + if new_resource.csp_report_url line.gsub!(/^( *)#csp_report_url:.*$/, "\\1csp_report_url: \"#{new_resource.csp_report_url}\"") end @@ -321,29 +338,6 @@ action :create do action :nothing end - execute "#{rails_directory}/lib/quad_tile/extconf.rb" do - command "ruby extconf.rb" - cwd "#{rails_directory}/lib/quad_tile" - user new_resource.user - group new_resource.group - not_if do - ::File.exist?("#{rails_directory}/lib/quad_tile/quad_tile_so.so") && - ::File.mtime("#{rails_directory}/lib/quad_tile/quad_tile_so.so") >= ::File.mtime("#{rails_directory}/lib/quad_tile/extconf.rb") && - ::File.mtime("#{rails_directory}/lib/quad_tile/quad_tile_so.so") >= ::File.mtime("#{rails_directory}/lib/quad_tile/quad_tile.c") && - ::File.mtime("#{rails_directory}/lib/quad_tile/quad_tile_so.so") >= ::File.mtime("#{rails_directory}/lib/quad_tile/quad_tile.h") - end - notifies :run, "execute[#{rails_directory}/lib/quad_tile/Makefile]" - end - - execute "#{rails_directory}/lib/quad_tile/Makefile" do - action :nothing - command "make" - cwd "#{rails_directory}/lib/quad_tile" - user new_resource.user - group new_resource.group - notifies :run, "execute[#{rails_directory}]" - end - execute rails_directory do action :nothing command "passenger-config restart-app --ignore-app-not-running #{rails_directory}" @@ -352,7 +346,7 @@ action :create do only_if { ::File.exist?("/usr/bin/passenger-config") } end - template "/etc/cron.daily/rails-#{name.tr('.', '-')}" do + template "/etc/cron.daily/rails-#{new_resource.site.tr('.', '-')}" do cookbook "web" source "rails.cron.erb" owner "root"