summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Server/Plugins/Packages/__init__.py
diff options
context:
space:
mode:
authorChris St. Pierre <chris.a.st.pierre@gmail.com>2013-03-25 11:19:11 -0400
committerChris St. Pierre <chris.a.st.pierre@gmail.com>2013-03-25 11:19:11 -0400
commit432f448983ff27452d82d62314d91c942f31bce5 (patch)
treef7f0aeb5f20e928306a37407857afe822713f5cb /src/lib/Bcfg2/Server/Plugins/Packages/__init__.py
parentfe7a3e9c7a7d66cccbd825465cefcf88165a0c3a (diff)
downloadbcfg2-432f448983ff27452d82d62314d91c942f31bce5.tar.gz
bcfg2-432f448983ff27452d82d62314d91c942f31bce5.tar.bz2
bcfg2-432f448983ff27452d82d62314d91c942f31bce5.zip
Packages: properly implemented deepcopy() for PackagesSources objects
Diffstat (limited to 'src/lib/Bcfg2/Server/Plugins/Packages/__init__.py')
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Packages/__init__.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/lib/Bcfg2/Server/Plugins/Packages/__init__.py b/src/lib/Bcfg2/Server/Plugins/Packages/__init__.py
index 308a0efc4..cc78497f1 100644
--- a/src/lib/Bcfg2/Server/Plugins/Packages/__init__.py
+++ b/src/lib/Bcfg2/Server/Plugins/Packages/__init__.py
@@ -185,6 +185,14 @@ class Packages(Bcfg2.Server.Plugin.Plugin,
for (key, value) in list(attrib.items()):
entry.attrib.__setitem__(key, value)
+ def get_config(self, metadata):
+ """ Get yum/apt config, as a string, for the specified client.
+
+ :param metadata: The client to create the config for.
+ :type metadata: Bcfg2.Server.Plugins.Metadata.ClientMetadata
+ """
+ return self.get_collection(metadata).get_config()
+
def HandleEntry(self, entry, metadata):
""" Bind configuration entries. ``HandleEntry`` handles
entries two different ways:
@@ -538,7 +546,8 @@ class Packages(Bcfg2.Server.Plugin.Plugin,
"""
collection = self.get_collection(metadata)
return dict(sources=collection.get_additional_data(),
- allsources=copy.deepcopy(self.sources))
+ allsources=copy.deepcopy(self.sources),
+ get_config=self.get_config)
def end_client_run(self, metadata):
""" Hook to clear the cache for this client in