diff --git a/scripts/check_mod_md.py b/scripts/check_mod_md.py new file mode 100644 index 0000000..aa02a3a --- /dev/null +++ b/scripts/check_mod_md.py @@ -0,0 +1,33 @@ +from pastafariutils import linux +import distro +import argparse +from pathlib import Path +import os, sys + + +parser=argparse.ArgumentParser(prog='manage_apache.py', description='A tool for admin an apache server') + +parser.add_argument("--set_reload_apache", action='store_true') + +args=parser.parse_args() + +tmp_file='/tmp/reload_apache_file' + +if args.set_reload_apache: + Path(tmp_file).touch() +else: + if os.path.isfile(tmp_file): + + print('Reloading apache because is neccesary for mod_md from apache...') + + linux_service={'debian' : 'apache2', 'ubuntu' : 'apache2', 'fedora' : 'httpd', 'almalinux' : 'httpd', 'rocky' : 'httpd', 'arch' : 'httpd', 'gentoo': 'apache2'} + + if linux.systemd_service('reload', linux_service): + + os.unlink(tmp_file) + else: + print('Error: cannot reload apache for update mod_md certificates') + sys.exit(1) + + + diff --git a/scripts/install_apache.py b/scripts/install_apache.py index a8b656f..8414dd0 100644 --- a/scripts/install_apache.py +++ b/scripts/install_apache.py @@ -129,6 +129,10 @@ if linux_distro=='rocky' or linux_distro=='almalinux' or linux_distro=='fedora': else: print('Not firewalld detected...') +# Copy file + +linux.shell_command('sudo cp modules/apache/scripts/check_mod_md.py /usr/local/bin && sudo chmod 755 /usr/local/bin/check_mod_md.py') + #Restart apache linux_service={'debian' : 'apache2', 'ubuntu' : 'apache2', 'fedora' : 'httpd', 'almalinux' : 'httpd', 'rocky' : 'httpd', 'arch' : 'httpd'} diff --git a/tasks/apache/apache/install_apache.py b/tasks/apache/apache/install_apache.py index 1e119ea..06a9682 100644 --- a/tasks/apache/apache/install_apache.py +++ b/tasks/apache/apache/install_apache.py @@ -28,7 +28,7 @@ class ServerTask(Task): #['modules/webservers/scripts/install_quota_home.py', 0o700], - self.files=[['modules/apache/scripts/install_apache.py', 0o700]] + self.files=[['modules/apache/scripts/install_apache.py', 0o700], ['modules/apache/scripts/check_mod_md.py', 0o700]] #self.commands_to_execute=[]