mirror of
https://github.com/YunoHost/moulinette.git
synced 2024-09-03 20:06:31 +02:00
Add dyndns detection at postinstall
This commit is contained in:
parent
185e4bbd0e
commit
87402bffb6
2 changed files with 11 additions and 5 deletions
|
@ -61,7 +61,7 @@ def dyndns_subscribe(subscribe_host="dyndns.yunohost.org", domain=None, key=None
|
|||
# Send subscription
|
||||
r = requests.post('http://'+ subscribe_host +'/key/'+ key, data={ 'subdomain': domain })
|
||||
if r.status_code != 201:
|
||||
error = json.loads(r.text)['error']
|
||||
error = json.loads(r.text)['error']
|
||||
raise YunoHostError(1, _("An error occured during DynDNS registration: "+ error))
|
||||
|
||||
win_msg(_("Subscribed to DynDNS"))
|
||||
|
|
|
@ -121,7 +121,7 @@ def tools_adminpw(old_password, new_password):
|
|||
raise YunoHostError(22, _("Invalid password"))
|
||||
|
||||
|
||||
def tools_maindomain(old_domain, new_domain):
|
||||
def tools_maindomain(old_domain, new_domain, dyndns=False):
|
||||
"""
|
||||
Main domain change tool
|
||||
|
||||
|
@ -204,6 +204,14 @@ def tools_maindomain(old_domain, new_domain):
|
|||
if os.system(command) != 0:
|
||||
raise YunoHostError(17, _("There were a problem during domain changing"))
|
||||
|
||||
if dyndns: dyndns_subscribe(domain=new_domain)
|
||||
elif len(new_domain.split('.')) >= 3:
|
||||
r = requests.get('http://dyndns.yunohost.org/domains')
|
||||
dyndomains = json.loads(r.text)
|
||||
dyndomain = '.'.join(new_domain.split('.')[1:])
|
||||
if dyndomain in dyndomains:
|
||||
dyndns_subscribe(domain=new_domain)
|
||||
|
||||
win_msg(_("Main domain has been successfully changed"))
|
||||
|
||||
|
||||
|
@ -255,13 +263,11 @@ def tools_postinstall(domain, password, dyndns=False):
|
|||
tools_ldapinit(password)
|
||||
|
||||
# New domain config
|
||||
tools_maindomain(old_domain='yunohost.org', new_domain=domain)
|
||||
tools_maindomain(old_domain='yunohost.org', new_domain=domain, dyndns=dyndns)
|
||||
|
||||
# Change LDAP admin password
|
||||
tools_adminpw(old_password='yunohost', new_password=password)
|
||||
|
||||
if dyndns: dyndns_subscribe()
|
||||
|
||||
os.system('touch /etc/yunohost/installed')
|
||||
os.system('service samba restart')
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue