diff --git a/lib/cdist/config_install.py b/lib/cdist/config_install.py index cfd7e4c9..cdb76ccd 100644 --- a/lib/cdist/config_install.py +++ b/lib/cdist/config_install.py @@ -140,8 +140,11 @@ class ConfigInstall(object): for requirement in cdist_object.requirements: self.log.debug("Object %s requires %s", cdist_object, requirement) required_object = cdist_object.object_from_name(requirement) - self.log.info("Resolving dependency %s for %s" % (required_object.name, cdist_object.name)) - self.object_run(required_object) + if required_object.state == core.Object.STATE_DONE: + self.log.debug("Skipping fulfilled dependency %s for %s", required_object, cdist_object) + else: + self.log.info("Resolving dependency %s for %s" % (required_object.name, cdist_object.name)) + self.object_run(required_object) self.log.info("Running gencode and code for " + cdist_object.name)