X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/1269b473221f4b6c5f7beee400092c9620fc79fb..7ea036c5c720451f3a59bf88021dc574aafb3242:/cookbooks/mailman/recipes/default.rb diff --git a/cookbooks/mailman/recipes/default.rb b/cookbooks/mailman/recipes/default.rb index ab70a0528..f7deccadd 100644 --- a/cookbooks/mailman/recipes/default.rb +++ b/cookbooks/mailman/recipes/default.rb @@ -1,8 +1,8 @@ # -# Cookbook Name:: mailman +# Cookbook:: mailman # Recipe:: default # -# Copyright 2011, OpenStreetMap Foundation +# Copyright:: 2011, OpenStreetMap Foundation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -20,19 +20,32 @@ require "securerandom" include_recipe "apache" +include_recipe "prometheus" -package "mailman" +package %w[ + locales-all + mailman + ruby-webrick +] -node.normal_unless[:mailman][:subscribe_form_secret] = SecureRandom.base64(48) +subscribe_form_secret = persistent_token("mailman", "subscribe_form_secret") template "/etc/mailman/mm_cfg.py" do source "mm_cfg.py.erb" user "root" group "root" - mode 0o644 + mode "644" + variables :subscribe_form_secret => subscribe_form_secret notifies :restart, "service[mailman]" end +execute "newlist" do + command "newlist -q mailman mailman@example.com mailman" + user "root" + group "root" + not_if { ::File.exist?("/var/lib/mailman/lists/mailman/") } +end + service "mailman" do action [:enable, :start] supports :restart => true, :reload => true @@ -56,5 +69,10 @@ template "/etc/cron.daily/lists-backup" do source "backup.cron.erb" owner "root" group "root" - mode 0o755 + mode "755" +end + +prometheus_exporter "mailman" do + port 8083 + user "list" end