From 96c492953db706df8e2e7be938b9be2bd4e442af Mon Sep 17 00:00:00 2001 From: "Chris St. Pierre" Date: Thu, 30 Aug 2012 10:11:01 -0400 Subject: Metadata: only write client version to clients.xml/database if it has changed --- src/lib/Bcfg2/Server/Plugins/Metadata.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'src/lib/Bcfg2/Server/Plugins') diff --git a/src/lib/Bcfg2/Server/Plugins/Metadata.py b/src/lib/Bcfg2/Server/Plugins/Metadata.py index 2d095ed0a..fad9d7e38 100644 --- a/src/lib/Bcfg2/Server/Plugins/Metadata.py +++ b/src/lib/Bcfg2/Server/Plugins/Metadata.py @@ -802,17 +802,17 @@ class Metadata(Bcfg2.Server.Plugin.Metadata, def set_version(self, client, version): """Set group parameter for provided client.""" - self.logger.info("Setting client %s version to %s" % (client, version)) if client in self.clients: - self.logger.info("Setting version on client %s to %s" % - (client, version)) - self.update_client(client, dict(version=version)) + if client not in self.versions or version != self.versions[client]: + self.logger.info("Setting client %s version to %s" % + (client, version)) + self.update_client(client, dict(version=version)) + self.versions[client] = version + self.clients_xml.write() else: msg = "Cannot set version on non-existent client %s" % client self.logger.error(msg) raise Bcfg2.Server.Plugin.MetadataConsistencyError(msg) - self.versions[client] = version - self.clients_xml.write() def resolve_client(self, addresspair, cleanup_cache=False): """Lookup address locally or in DNS to get a hostname.""" -- cgit v1.2.3-1-g7c22