summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander.sulfrian@fu-berlin.de>2015-07-24 02:46:36 +0200
committerAlexander Sulfrian <alexander.sulfrian@fu-berlin.de>2015-07-27 14:43:27 +0200
commite32136ac6e2d96f1e1dd36a16db628b0f686ac7c (patch)
tree10717de24d137822f25372bad290c0ff6aaf97d4
parent6af6e2de346b37b92a9ffc3f2a7b874c42332397 (diff)
downloadbcfg2-e32136ac6e2d96f1e1dd36a16db628b0f686ac7c.tar.gz
bcfg2-e32136ac6e2d96f1e1dd36a16db628b0f686ac7c.tar.bz2
bcfg2-e32136ac6e2d96f1e1dd36a16db628b0f686ac7c.zip
AWSTags: Expire metadata cache at start of client run
AWSTags cannot know whether the tags change, so it cannot expire the metadata cache correctly. Instead we have to expire the cache at beginning of each client run. This practically disables agressive client metadata caching, so we print a warning.
-rw-r--r--src/lib/Bcfg2/Server/Plugins/AWSTags.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/lib/Bcfg2/Server/Plugins/AWSTags.py b/src/lib/Bcfg2/Server/Plugins/AWSTags.py
index 0d6eefaaa..556805bde 100644
--- a/src/lib/Bcfg2/Server/Plugins/AWSTags.py
+++ b/src/lib/Bcfg2/Server/Plugins/AWSTags.py
@@ -172,6 +172,11 @@ class AWSTags(Bcfg2.Server.Plugin.Plugin,
def start_client_run(self, metadata):
self.expire_cache(key=metadata.hostname)
+ if self.core.metadata_cache_mode == 'aggressive':
+ self.logger.warning("AWSTags is incompatible with aggressive "
+ "client metadata caching, try 'cautious' "
+ "or 'initial'")
+ self.core.metadata_cache.expire(metadata.hostname)
def get_additional_data(self, metadata):
return self.get_tags(metadata)