@@ -10,12 +10,10 @@ def deploy_acmetool(email="", domains=[]):
1010 packages = ["acmetool" ],
1111 )
1212
13- files .put (
14- src = importlib .resources .files (__package__ ).joinpath ("acmetool.cron" ).open ("rb" ),
15- dest = "/etc/cron.d/acmetool" ,
16- user = "root" ,
17- group = "root" ,
18- mode = "644" ,
13+ files .file (
14+ name = "Remove old acmetool cronjob, it is replaced with systemd timer." ,
15+ path = "/etc/cron.d/acmetool" ,
16+ present = False ,
1917 )
2018
2119 files .put (
@@ -67,6 +65,40 @@ def deploy_acmetool(email="", domains=[]):
6765 restarted = service_file .changed ,
6866 )
6967
68+ reconcile_service_file = files .put (
69+ src = importlib .resources .files (__package__ ).joinpath (
70+ "acmetool-reconcile.service"
71+ ),
72+ dest = "/etc/systemd/system/acmetool-reconcile.service" ,
73+ user = "root" ,
74+ group = "root" ,
75+ mode = "644" ,
76+ )
77+
78+ systemd .service (
79+ name = "Setup acmetool-reconcile service" ,
80+ service = "acmetool-reconcile.service" ,
81+ running = False ,
82+ enabled = False ,
83+ daemon_reload = reconcile_service_file .changed ,
84+ )
85+
86+ reconcile_timer_file = files .put (
87+ src = importlib .resources .files (__package__ ).joinpath ("acmetool-reconcile.timer" ),
88+ dest = "/etc/systemd/system/acmetool-reconcile.timer" ,
89+ user = "root" ,
90+ group = "root" ,
91+ mode = "644" ,
92+ )
93+
94+ systemd .service (
95+ name = "Setup acmetool-reconcile timer" ,
96+ service = "acmetool-reconcile.timer" ,
97+ running = True ,
98+ enabled = True ,
99+ daemon_reload = reconcile_timer_file .changed ,
100+ )
101+
70102 server .shell (
71103 name = f"Request certificate for: { ', ' .join (domains )} " ,
72104 commands = [f"acmetool want --xlog.severity=debug { ' ' .join (domains )} " ],
0 commit comments