noop pglock for unit tests

This commit is contained in:
Chris Meyers
2017-07-05 13:21:45 -04:00
parent f3f9782c0b
commit e226b0ab37
3 changed files with 17 additions and 2 deletions

View File

@@ -16,6 +16,7 @@ from django.utils.timezone import now as tz_now
from awx.main.models import * # noqa
#from awx.main.scheduler.dag_simple import SimpleDAG
from awx.main.scheduler.dag_workflow import WorkflowDAG
from awx.main.utils.pglock import advisory_lock
from awx.main.scheduler.dependency_graph import DependencyGraph
from awx.main.tasks import _send_notification_templates
@@ -23,7 +24,6 @@ from awx.main.tasks import _send_notification_templates
# Celery
from celery.task.control import inspect
from django_pglocks import advisory_lock
logger = logging.getLogger('awx.main.scheduler')

View File

@@ -6,6 +6,7 @@ import json
# Django
from django.db import transaction
from django.utils.timezone import now as tz_now
from awx.main.utils.pglock import advisory_lock
# Celery
from celery import task
@@ -14,7 +15,6 @@ from celery import task
from awx.main.scheduler import TaskManager
from django.core.cache import cache
from django_pglocks import advisory_lock
logger = logging.getLogger('awx.main.scheduler')

15
awx/main/utils/pglock.py Normal file
View File

@@ -0,0 +1,15 @@
# Copyright (c) 2017 Ansible by Red Hat
# All Rights Reserved.
from contextlib import contextmanager
from django_pglocks import advisory_lock as django_pglocks_advisory_lock
from django.db import connection
@contextmanager
def advisory_lock(*args, **kwargs):
if connection.vendor == 'postgresql':
with django_pglocks_advisory_lock(*args, **kwargs) as internal_lock:
yield internal_lock
else:
yield True