blob: 987f752e4d0047030b5f06bd3b498ee33fa775b5 [file] [log] [blame]
Yunpeng Zhang0048cf42017-08-15 23:01:28 -04001import os
2import sys
3from django.db.models import Q, F
4from synchronizers.new_base.SyncInstanceUsingAnsible import SyncInstanceUsingAnsible
5from synchronizers.new_base.modelaccessor import *
6
7parentdir = os.path.join(os.path.dirname(__file__), "..")
8sys.path.insert(0, parentdir)
9
10class SyncVPGWUTenant(SyncInstanceUsingAnsible):
Yunpeng Zhang0048cf42017-08-15 23:01:28 -040011 provides = [VPGWUTenant]
12
13 observes = VPGWUTenant
14
15 requested_interval = 0
16
17 template_name = "vpgwutenant_playbook.yaml"
18
19 service_key_name = "/opt/xos/configurations/mcord/mcord_private_key"
20
21 def __init__(self, *args, **kwargs):
22 super(SyncVPGWUTenant, self).__init__(*args, **kwargs)
23
24 def fetch_pending(self, deleted):
Yunpeng Zhang0048cf42017-08-15 23:01:28 -040025 if (not deleted):
26 objs = VPGWUTenant.get_tenant_objects().filter(
27 Q(enacted__lt=F('updated')) | Q(enacted=None), Q(lazy_blocked=False))
28 else:
Yunpeng Zhang0048cf42017-08-15 23:01:28 -040029 objs = VPGWUTenant.get_deleted_tenant_objects()
30
31 return objs
32