]> git.ipfire.org Git - oddments/ddns.git/blobdiff - src/ddns/__init__.py
Allow forcing an update.
[oddments/ddns.git] / src / ddns / __init__.py
index ee91a602632c6812535cf817384aea6db0413170..2fb5e021e969f56ed4570b4ca4fc78ad6a90ebda 100644 (file)
@@ -86,7 +86,10 @@ class DDNSCore(object):
                        Simply registers all providers.
                """
                for provider in (
+                       DDNSProviderDHS,
+                       DDNSProviderDNSpark,
                        DDNSProviderNOIP,
+                       DDNSProviderLightningWireLabs,
                        DDNSProviderSelfhost,
                ):
                        self.register_provider(provider)
@@ -130,7 +133,7 @@ class DDNSCore(object):
                        if not entry in self.entries:
                                self.entries.append(entry)
 
-       def updateall(self):
+       def updateall(self, force=False):
                # If there are no entries, there is nothing to do.
                if not self.entries:
                        logger.debug(_("Found no entries in the configuration file. Exiting."))
@@ -138,11 +141,11 @@ class DDNSCore(object):
 
                # Update them all.
                for entry in self.entries:
-                       self.update(entry)
+                       self.update(entry, force=force)
 
-       def update(self, entry):
+       def update(self, entry, force=False):
                try:
-                       entry()
+                       entry(force=force)
 
                except DDNSUpdateError, e:
                        logger.error(_("Dynamic DNS update for %(hostname)s (%(provider)s) failed:") % \