]> git.ipfire.org Git - ddns.git/blobdiff - src/ddns/__init__.py
Add runtime check for providers if all dependencies are met
[ddns.git] / src / ddns / __init__.py
index 84b8c80043a2378284afc254585d4c080b72b837..7f2729c2c8c0cc93e09e46ec343fce6804664276 100644 (file)
@@ -124,6 +124,12 @@ class DDNSCore(object):
                                logger.warning("Could not find provider '%s' for entry '%s'." % (provider, entry))
                                continue
 
+                       # Check if the provider is actually supported and if there are
+                       # some dependencies missing on this system.
+                       if not provider.supported():
+                               logger.warning("Provider '%s' is known, but not supported on this machine" % (provider.name))
+                               continue
+
                        # Create an instance of the provider object with settings from the
                        # configuration file.
                        entry = provider(self, **settings)