@@ -49,30 +49,35 @@ public function onBeforeRun() {
4949
5050 public function onRunJob () {
5151 global $ app , $ conf ;
52-
53- $ letsencrypt = explode ("\n" , shell_exec ('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt ' ));
54- $ letsencrypt = reset ($ letsencrypt );
55- if (is_executable ($ letsencrypt )) {
56- $ version = exec ($ letsencrypt . ' --version 2>&1 ' , $ ret , $ val );
57- if (preg_match ('/^(\S+|\w+)\s+(\d+(\.\d+)+)$/ ' , $ version , $ matches )) {
58- $ type = strtolower ($ matches [1 ]);
59- $ version = $ matches [2 ];
60- if (($ type != 'letsencrypt ' && $ type != 'certbot ' ) || version_compare ($ version , '0.7.0 ' , '< ' )) {
61- exec ($ letsencrypt . ' -n renew ' );
62- $ app ->services ->restartServiceDelayed ('httpd ' , 'force-reload ' );
63- } else {
64- $ marker_file = '/usr/local/ispconfig/server/le.restart ' ;
65- $ cmd = "echo '1' > " . $ marker_file ;
66- exec ($ letsencrypt . ' -n renew --post-hook ' . escapeshellarg ($ cmd ));
67- if (file_exists ($ marker_file ) && trim (file_get_contents ($ marker_file )) == '1 ' ) {
68- unlink ($ marker_file );
52+
53+ $ server_config = $ app ->getconf ->get_server_config ($ conf ['server_id ' ], 'server ' );
54+ if (!isset ($ server_config ['migration_mode ' ]) || $ server_config ['migration_mode ' ] != 'y ' ) {
55+ $ letsencrypt = explode ("\n" , shell_exec ('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt ' ));
56+ $ letsencrypt = reset ($ letsencrypt );
57+ if (is_executable ($ letsencrypt )) {
58+ $ version = exec ($ letsencrypt . ' --version 2>&1 ' , $ ret , $ val );
59+ if (preg_match ('/^(\S+|\w+)\s+(\d+(\.\d+)+)$/ ' , $ version , $ matches )) {
60+ $ type = strtolower ($ matches [1 ]);
61+ $ version = $ matches [2 ];
62+ if (($ type != 'letsencrypt ' && $ type != 'certbot ' ) || version_compare ($ version , '0.7.0 ' , '< ' )) {
63+ exec ($ letsencrypt . ' -n renew ' );
6964 $ app ->services ->restartServiceDelayed ('httpd ' , 'force-reload ' );
65+ } else {
66+ $ marker_file = '/usr/local/ispconfig/server/le.restart ' ;
67+ $ cmd = "echo '1' > " . $ marker_file ;
68+ exec ($ letsencrypt . ' -n renew --post-hook ' . escapeshellarg ($ cmd ));
69+ if (file_exists ($ marker_file ) && trim (file_get_contents ($ marker_file )) == '1 ' ) {
70+ unlink ($ marker_file );
71+ $ app ->services ->restartServiceDelayed ('httpd ' , 'force-reload ' );
72+ }
7073 }
74+ } else {
75+ exec ($ letsencrypt . ' -n renew ' );
76+ $ app ->services ->restartServiceDelayed ('httpd ' , 'force-reload ' );
7177 }
72- } else {
73- exec ($ letsencrypt . ' -n renew ' );
74- $ app ->services ->restartServiceDelayed ('httpd ' , 'force-reload ' );
7578 }
79+ } else {
80+ $ app ->log ('Migration mode active, not running Let \'s Encrypt renewal. ' , LOGLEVEL_DEBUG );
7681 }
7782
7883 parent ::onRunJob ();
0 commit comments