From: Tom Hughes Date: Thu, 20 Feb 2025 20:38:10 +0000 (+0000) Subject: Fix some bundle_config issues X-Git-Url: https://git.openstreetmap.org./chef.git/commitdiff_plain/2cd687644ea9859ba8baf3f2b6d5b21e5f537926 Fix some bundle_config issues --- diff --git a/cookbooks/blogs/recipes/default.rb b/cookbooks/blogs/recipes/default.rb index b7d47e445..1c18faba7 100644 --- a/cookbooks/blogs/recipes/default.rb +++ b/cookbooks/blogs/recipes/default.rb @@ -45,10 +45,12 @@ git "/srv/blogs.openstreetmap.org" do end bundle_config "/srv/blogs.openstreetmap.org" do + action :nothing user "blogs" group "blogs" settings "deployment" => "true", "without" => "development:test" + subscribes :create, "git[/srv/blogs.openstreetmap.org]", :immediately end bundle_install "/srv/blogs.openstreetmap.org" do diff --git a/cookbooks/ruby/resources/bundle_config.rb b/cookbooks/ruby/resources/bundle_config.rb index 6c1eae6ba..aa2e9504a 100644 --- a/cookbooks/ruby/resources/bundle_config.rb +++ b/cookbooks/ruby/resources/bundle_config.rb @@ -57,6 +57,6 @@ action_class do end def after_created - subscribes :run, "gem_package[bundler#{node[:ruby][:version]}-1]" - subscribes :run, "gem_package[bundler#{node[:ruby][:version]}-2]" + subscribes :create, "gem_package[bundler#{node[:ruby][:version]}-1]" + subscribes :create, "gem_package[bundler#{node[:ruby][:version]}-2]" end diff --git a/cookbooks/serverinfo/attributes/default.rb b/cookbooks/serverinfo/attributes/default.rb new file mode 100644 index 000000000..bd45555d1 --- /dev/null +++ b/cookbooks/serverinfo/attributes/default.rb @@ -0,0 +1 @@ +default[:accounts][:users][:serverinfo][:status] = :role diff --git a/cookbooks/serverinfo/metadata.rb b/cookbooks/serverinfo/metadata.rb index 55d69f066..48a196ad6 100644 --- a/cookbooks/serverinfo/metadata.rb +++ b/cookbooks/serverinfo/metadata.rb @@ -6,6 +6,7 @@ description "Configures server-info web site" version "1.0.0" supports "ubuntu" +depends "accounts" depends "apache" depends "git" depends "ruby" diff --git a/cookbooks/serverinfo/recipes/default.rb b/cookbooks/serverinfo/recipes/default.rb index 3999ffe80..6302e5a0d 100644 --- a/cookbooks/serverinfo/recipes/default.rb +++ b/cookbooks/serverinfo/recipes/default.rb @@ -17,6 +17,7 @@ # limitations under the License. # +include_recipe "accounts" include_recipe "apache" include_recipe "git" include_recipe "ruby" @@ -30,12 +31,18 @@ package %w[ pkg-config ] +directory "/srv/hardware.openstreetmap.org" do + owner "serverinfo" + group "serverinfo" + mode "755" +end + git "/srv/hardware.openstreetmap.org" do action :sync repository "https://github.com/osmfoundation/osmf-server-info.git" depth 1 - user "root" - group "root" + user "serverinfo" + group "serverinfo" notifies :run, "bundle_install[/srv/hardware.openstreetmap.org]" end @@ -45,52 +52,41 @@ roles = { :rows => search(:role, "*:*") } file "/srv/hardware.openstreetmap.org/_data/nodes.json" do content nodes.to_json mode "644" - owner "root" - group "root" + owner "serverinfo" + group "serverinfo" notifies :run, "bundle_exec[/srv/hardware.openstreetmap.org]" end file "/srv/hardware.openstreetmap.org/_data/roles.json" do content roles.to_json mode "644" - owner "root" - group "root" + owner "serverinfo" + group "serverinfo" notifies :run, "bundle_exec[/srv/hardware.openstreetmap.org]" end -directory "/srv/hardware.openstreetmap.org/_site" do - mode "755" - owner "nobody" - group "nogroup" -end - -directory "/srv/hardware.openstreetmap.org/vendor" do - action :create - owner "nobody" - group "nogroup" - notifies :run, "bundle_install[/srv/hardware.openstreetmap.org]", :immediately -end - bundle_config "/srv/hardware.openstreetmap.org" do - user "nobody" - group "nogroup" + action :create + user "serverinfo" + group "serverinfo" settings "deployment" => "true", "without" => "development:test", "jobs" => node.cpu_cores.to_s + notifies :run, "bundle_exec[/srv/hardware.openstreetmap.org]" end bundle_install "/srv/hardware.openstreetmap.org" do action :nothing - user "nobody" - group "nogroup" + user "serverinfo" + group "serverinfo" notifies :run, "bundle_exec[/srv/hardware.openstreetmap.org]" end bundle_exec "/srv/hardware.openstreetmap.org" do action :nothing command "jekyll build --trace --disable-disk-cache --baseurl=https://hardware.openstreetmap.org" - user "nobody" - group "nogroup" + user "serverinfo" + group "serverinfo" environment "LANG" => "C.UTF-8" end diff --git a/test/data_bags/accounts/serverinfo.json b/test/data_bags/accounts/serverinfo.json new file mode 100644 index 000000000..2b01af603 --- /dev/null +++ b/test/data_bags/accounts/serverinfo.json @@ -0,0 +1,6 @@ +{ + "id": "serverinfo", + "uid": "534", + "comment": "hardware.openstreetmap.org", + "manage_home": false +}