add rsync --delete for cleanup
This commit is contained in:
parent
5becd6d9a1
commit
ef0ab2752b
2 changed files with 24 additions and 17 deletions
25
n_gen.py
25
n_gen.py
|
@ -12,8 +12,8 @@ with open("clusters.json") as json_file:
|
|||
# Setup Jinja2
|
||||
jin = Environment(loader=PackageLoader("n_gen"), autoescape=select_autoescape())
|
||||
|
||||
load_dotenv()
|
||||
NGINX_DIR = os.getenv('NGINX_DIR')
|
||||
load_dotenv()
|
||||
NGINX_DIR = os.getenv("NGINX_DIR")
|
||||
|
||||
|
||||
# Go through config names and find highest config number. Increment by 1 and use as new ID
|
||||
|
@ -23,11 +23,12 @@ def get_conf_id(nginx_dir):
|
|||
domain_list = list_auto + list_custom
|
||||
last_id = 0
|
||||
for dom in domain_list:
|
||||
id = int(dom.split('-')[0])
|
||||
id = int(dom.split("-")[0])
|
||||
if id > last_id:
|
||||
last_id = id
|
||||
new_id = last_id + 1
|
||||
return(new_id)
|
||||
return new_id
|
||||
|
||||
|
||||
def get_domains():
|
||||
new_domain = True
|
||||
|
@ -107,29 +108,39 @@ def create_nginx_config(id, domains, upstreams, port, proto):
|
|||
id=id, domains=domains, upstreams=upstreams, port=port, proto=proto
|
||||
)
|
||||
|
||||
|
||||
def write_nginx_config(config, nginx_dir, domains, conf_id):
|
||||
filename = str(conf_id) + "-" + domains[0] + ".conf"
|
||||
path = nginx_dir + "/sites/auto/" + filename
|
||||
with open(path, "w") as conf_file:
|
||||
conf_file.write(config)
|
||||
|
||||
|
||||
def create_ssl_config(conf_id):
|
||||
template = jin.get_template("ssl.conf")
|
||||
return template.render(id=conf_id)
|
||||
|
||||
|
||||
def write_ssl_config(config, conf_id, nginx_dir):
|
||||
filename = str(conf_id) + ".conf"
|
||||
path = nginx_dir + "/ssl/" + filename
|
||||
with open(path, "w") as conf_file:
|
||||
conf_file.write(config)
|
||||
|
||||
|
||||
def ssl_continue():
|
||||
if pyip.inputYesNo("Do you want to prepare ssl certs and replicate the config? (y/n) ") == "yes":
|
||||
if (
|
||||
pyip.inputYesNo(
|
||||
"Do you want to prepare ssl certs and replicate the config? (y/n) "
|
||||
)
|
||||
== "yes"
|
||||
):
|
||||
n_ssl.main()
|
||||
else:
|
||||
print("Ok, you can run n_ssl.py to do it later.")
|
||||
exit()
|
||||
|
||||
|
||||
def main():
|
||||
print("This script will generate nginx configuration and for new service.\n")
|
||||
conf_id = get_conf_id(NGINX_DIR)
|
||||
|
@ -148,12 +159,8 @@ def main():
|
|||
ssl_continue()
|
||||
|
||||
|
||||
|
||||
|
||||
# def test():
|
||||
# print(create_nginx_config("1110", ['nolog.cz', 'www.nolog.cz'], ['10.0.0.1', '10.0.0.2'], 80, 'https://'))
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
||||
|
16
n_ssl.py
16
n_ssl.py
|
@ -8,12 +8,12 @@ from dotenv import load_dotenv
|
|||
# DOMAINS_TXT = "/etc/autossl/domains.txt"
|
||||
# DEHYDRATED_LOC = "/etc/autossl/dehydrated.sh"
|
||||
|
||||
load_dotenv()
|
||||
NGINX_DIR = os.getenv('NGINX_DIR')
|
||||
DOMAINS_TXT = os.getenv('DOMAINS_TXT')
|
||||
DEHYDRATED_LOC = os.getenv('DEHYDRATED_LOC')
|
||||
REMOTE = os.getenv('REMOTE')
|
||||
REMOTE_SSH_KEY = os.getenv('REMOTE_SSH_KEY')
|
||||
load_dotenv()
|
||||
NGINX_DIR = os.getenv("NGINX_DIR")
|
||||
DOMAINS_TXT = os.getenv("DOMAINS_TXT")
|
||||
DEHYDRATED_LOC = os.getenv("DEHYDRATED_LOC")
|
||||
REMOTE = os.getenv("REMOTE")
|
||||
REMOTE_SSH_KEY = os.getenv("REMOTE_SSH_KEY")
|
||||
|
||||
|
||||
def create_domfile():
|
||||
|
@ -80,7 +80,7 @@ def remote_replication(remote, ssh_key):
|
|||
destination="/etc/nginx/",
|
||||
destination_ssh=remote,
|
||||
private_key=ssh_key,
|
||||
options=["-a"],
|
||||
options=["-a", "--delete"],
|
||||
)
|
||||
# Copy certificates to second server
|
||||
sysrsync.run(
|
||||
|
@ -88,7 +88,7 @@ def remote_replication(remote, ssh_key):
|
|||
destination="/etc/autossl/",
|
||||
destination_ssh=remote,
|
||||
private_key=ssh_key,
|
||||
options=["-a"],
|
||||
options=["-a", "--delete"],
|
||||
)
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue