X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/03804a4aeb75eaf29b5b5fa3c6ed3b222b7f58e4..45dde9418dd342bb1a632d82559201c0b3becf1a:/cookbooks/chef/recipes/server.rb diff --git a/cookbooks/chef/recipes/server.rb b/cookbooks/chef/recipes/server.rb index 614eb81b4..eb2a33ae4 100644 --- a/cookbooks/chef/recipes/server.rb +++ b/cookbooks/chef/recipes/server.rb @@ -1,14 +1,14 @@ # -# Cookbook Name:: chef +# Cookbook:: chef # Recipe:: server # -# Copyright 2010, OpenStreetMap Foundation +# Copyright:: 2010, 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,61 +17,45 @@ # limitations under the License. # -include_recipe "apache::ssl" +include_recipe "apache" -chef_platform = case node[:platform_version] - when "12.10" then "12.04" - else node[:platform_version] - end - -chef_package = "chef-server_#{node[:chef][:server][:version]}_amd64.deb" - -directory "/var/cache/chef" do - owner "root" - group "root" - mode 0755 -end - -Dir.glob("/var/cache/chef/chef-server_*.deb").each do |deb| - if deb != "/var/cache/chef/#{chef_package}" - file deb do - action :delete - backup false - end - end -end - -remote_file "/var/cache/chef/#{chef_package}" do - source "https://opscode-omnibus-packages.s3.amazonaws.com/ubuntu/#{chef_platform}/x86_64/#{chef_package}" - owner "root" - group "root" - mode 0644 - backup false -end - -dpkg_package "chef-erver" do - source "/var/cache/chef/#{chef_package}" - version node[:chef][:server][:version] - notifies :run, "execute[chef-server-reconfigure]" -end - -ruby_block "/opt/chef-server/embedded/service/chef-server-webui/app/controllers/status_controller.rb" do - block do - rc = Chef::Util::FileEdit.new("/opt/chef-server/embedded/service/chef-server-webui/app/controllers/status_controller.rb") - rc.search_file_delete(/&rows=20/) - rc.write_file +# chef_version = node[:chef][:server][:version] +# chef_package = "chef-server-core_#{chef_version}-1_amd64.deb" +# +# directory "/var/cache/chef" do +# owner "root" +# group "root" +# mode 0755 +# end +# +# Dir.glob("/var/cache/chef/chef-server-core_*.deb").each do |deb| +# next if deb == "/var/cache/chef/#{chef_package}" - if rc.file_edited? - resources(:execute => "chef-server-reconfigure").run_action(:run) - end - end -end +# file deb do +# action :delete +# backup false +# end +# end +# +# remote_file "/var/cache/chef/#{chef_package}" do +# source "https://packages.chef.io/files/stable/chef-server/#{chef_version}/ubuntu/16.04/#{chef_package}" +# owner "root" +# group "root" +# mode 0644 +# backup false +# end +# +# dpkg_package "chef-server-core" do +# source "/var/cache/chef/#{chef_package}" +# version "#{chef_version}-1" +# notifies :run, "execute[chef-server-reconfigure]" +# end -template "/etc/chef-server/chef-server.rb" do +template "/etc/opscode/chef-server.rb" do source "server.rb.erb" owner "root" group "root" - mode 0644 + mode 0o640 notifies :run, "execute[chef-server-reconfigure]" end @@ -82,15 +66,33 @@ execute "chef-server-reconfigure" do group "root" end -service "chef-server-runsvdir" do - provider Chef::Provider::Service::Upstart - action [ :enable, :start ] - supports :status => true, :restart => true, :reload => true +execute "chef-server-restart" do + action :nothing + command "chef-server-ctl restart" + user "root" + group "root" +end + +systemd_service "chef-server" do + description "Chef server" + after "network.target" + exec_start "/opt/opscode/embedded/bin/runsvdir-start" +end + +service "chef-server" do + action [:enable, :start] + subscribes :restart, "systemd_service[chef-server]" end apache_module "alias" apache_module "proxy_http" +ssl_certificate "chef.openstreetmap.org" do + domains ["chef.openstreetmap.org", "chef.osm.org"] + notifies :reload, "service[apache2]" + notifies :run, "execute[chef-server-restart]" +end + apache_site "chef.openstreetmap.org" do template "apache.erb" end @@ -99,5 +101,7 @@ template "/etc/cron.daily/chef-server-backup" do source "server-backup.cron.erb" owner "root" group "root" - mode 0755 + mode 0o755 end + +munin_plugin "chef_status"