Check connection for scan jobs before actually running the job, fail

early if the system tracking database isn't available
This commit is contained in:
Matthew Jones
2015-06-09 15:30:53 -04:00
parent 58207b4a04
commit ab5c4b5f20
3 changed files with 43 additions and 1 deletions

View File

@@ -0,0 +1,26 @@
# Copyright (c) 2015 Ansible, Inc. (formerly AnsibleWorks, Inc.)
# All Rights Reserved.
from django.conf import settings
from mongoengine import connect
from mongoengine.connection import get_db, ConnectionError
def test_mongo_connection():
# Connect to Mongo
try:
# Sanity check: If we have intentionally invalid settings, then we
# know we cannot connect.
if settings.MONGO_HOST == NotImplemented:
raise ConnectionError
# Attempt to connect to the MongoDB database.
connect(settings.MONGO_DB,
host=settings.MONGO_HOST,
port=int(settings.MONGO_PORT),
username=settings.MONGO_USERNAME,
password=settings.MONGO_PASSWORD,
tz_aware=settings.USE_TZ)
return True
except ConnectionError:
return False