diff options
Diffstat (limited to 'src/lib/Bcfg2/Reporting')
-rw-r--r-- | src/lib/Bcfg2/Reporting/Collector.py | 7 | ||||
-rw-r--r-- | src/lib/Bcfg2/Reporting/Transport/__init__.py | 5 |
2 files changed, 11 insertions, 1 deletions
diff --git a/src/lib/Bcfg2/Reporting/Collector.py b/src/lib/Bcfg2/Reporting/Collector.py index bb2e85c21..b27a961fd 100644 --- a/src/lib/Bcfg2/Reporting/Collector.py +++ b/src/lib/Bcfg2/Reporting/Collector.py @@ -9,6 +9,7 @@ import threading import Bcfg2.Logger from Bcfg2.Reporting.Transport import load_transport_from_config, \ TransportError, TransportImportError +from Bcfg2.Reporting.Transport.DirectStore import DirectStore from Bcfg2.Reporting.Storage import load_storage_from_config, \ StorageError, StorageImportError @@ -54,6 +55,12 @@ class ReportingCollector(object): traceback.format_exc().splitlines()[-1]) raise ReportingError + if isinstance(self.transport, DirectStore): + self.logger.error("DirectStore cannot be used with the collector. " + "Use LocalFilesystem instead") + self.shutdown() + raise ReportingError + try: self.logger.debug("Validating storage %s" % self.storage.__class__.__name__) diff --git a/src/lib/Bcfg2/Reporting/Transport/__init__.py b/src/lib/Bcfg2/Reporting/Transport/__init__.py index 8070c13fa..5c51dad1e 100644 --- a/src/lib/Bcfg2/Reporting/Transport/__init__.py +++ b/src/lib/Bcfg2/Reporting/Transport/__init__.py @@ -28,5 +28,8 @@ def load_transport(transport_name, setup): def load_transport_from_config(setup): """Load the transport in the config... eventually""" - return load_transport('DirectStore', setup) + try: + return load_transport(setup['reporting_transport'], setup) + except KeyError: + raise TransportImportError('Transport missing in config') |