mirror of
https://github.com/ggogel/seafile-containerized.git
synced 2025-02-22 13:02:15 +00:00
remove le and nginx from bootstrap.py
This commit is contained in:
parent
e47a39b9cd
commit
e89453b660
|
@ -27,74 +27,6 @@ shared_seafiledir = '/shared/seafile'
|
|||
ssl_dir = '/shared/ssl'
|
||||
generated_dir = '/bootstrap/generated'
|
||||
|
||||
def init_letsencrypt():
|
||||
loginfo('Preparing for letsencrypt ...')
|
||||
wait_for_nginx()
|
||||
|
||||
if not exists(ssl_dir):
|
||||
os.mkdir(ssl_dir)
|
||||
|
||||
domain = get_conf('SEAFILE_SERVER_HOSTNAME', 'seafile.example.com')
|
||||
context = {
|
||||
'ssl_dir': ssl_dir,
|
||||
'domain': domain,
|
||||
}
|
||||
render_template(
|
||||
'/templates/letsencrypt.cron.template',
|
||||
join(generated_dir, 'letsencrypt.cron'),
|
||||
context
|
||||
)
|
||||
|
||||
ssl_crt = '/shared/ssl/{}.crt'.format(domain)
|
||||
if exists(ssl_crt):
|
||||
loginfo('Found existing cert file {}'.format(ssl_crt))
|
||||
if cert_has_valid_days(ssl_crt, 30):
|
||||
loginfo('Skip letsencrypt verification since we have a valid certificate')
|
||||
if exists(join(ssl_dir, 'letsencrypt')):
|
||||
# Create a crontab to auto renew the cert for letsencrypt.
|
||||
call('/scripts/auto_renew_crt.sh {0} {1}'.format(ssl_dir, domain))
|
||||
return
|
||||
|
||||
loginfo('Starting letsencrypt verification')
|
||||
# Create a temporary nginx conf to start a server, which would accessed by letsencrypt
|
||||
context = {
|
||||
'https': False,
|
||||
'domain': domain,
|
||||
}
|
||||
if not os.path.isfile('/shared/nginx/conf/seafile.nginx.conf'):
|
||||
render_template('/templates/seafile.nginx.conf.template',
|
||||
'/etc/nginx/sites-enabled/seafile.nginx.conf', context)
|
||||
|
||||
call('nginx -s reload')
|
||||
time.sleep(2)
|
||||
|
||||
call('/scripts/ssl.sh {0} {1}'.format(ssl_dir, domain))
|
||||
# if call('/scripts/ssl.sh {0} {1}'.format(ssl_dir, domain), check_call=False) != 0:
|
||||
# eprint('Now waiting 1000s for postmortem')
|
||||
# time.sleep(1000)
|
||||
# sys.exit(1)
|
||||
|
||||
call('/scripts/auto_renew_crt.sh {0} {1}'.format(ssl_dir, domain))
|
||||
# Create a crontab to auto renew the cert for letsencrypt.
|
||||
|
||||
|
||||
def generate_local_nginx_conf():
|
||||
# Now create the final nginx configuratin
|
||||
domain = get_conf('SEAFILE_SERVER_HOSTNAME', 'seafile.example.com')
|
||||
context = {
|
||||
'https': is_https(),
|
||||
'domain': domain,
|
||||
}
|
||||
|
||||
if not os.path.isfile('/shared/nginx/conf/seafile.nginx.conf'):
|
||||
render_template(
|
||||
'/templates/seafile.nginx.conf.template',
|
||||
'/etc/nginx/sites-enabled/seafile.nginx.conf',
|
||||
context
|
||||
)
|
||||
nginx_etc_file = '/etc/nginx/sites-enabled/seafile.nginx.conf'
|
||||
nginx_shared_file = '/shared/nginx/conf/seafile.nginx.conf'
|
||||
call('mv {0} {1} && ln -sf {1} {0}'.format(nginx_etc_file, nginx_shared_file))
|
||||
|
||||
def is_https():
|
||||
return get_conf('SEAFILE_SERVER_LETSENCRYPT', 'false').lower() == 'true'
|
||||
|
|
Loading…
Reference in a new issue