+++ /dev/null
-from core.models import *
-
-def handle(site):
- """
- ensure ControllerSiteDeployment object exists for each of the site's SiteDeployment objects
- """
- from core.models import SiteDeployments, Controller, ControllerSiteDeployments
- from collections import defaultdict
-
- # get current controller site deployments
- ctrl_site_deployments = ControllerSiteDeployments.objects.filter(site_deployment__site = site)
- ctrl_site_deployments_dict = {}
- for ctrl_site_depl in controller_site_deployments:
- ctrl_site_deployments_dict[ctrl_site_depl.site_deployment] = ctrl_cite_depl
-
- # get current site deployments
- site_deployments = SiteDeployments.objects.filter(site=site)
-
- # for each site deployment, if there is no controller site deployment create one
- for site_deployment in site_deployments:
- if site_deployment not in ctrl_site_deployments_dict:
- ctrl_site_deployment = ControllerSiteDeployment(
- site_deployment=site_deployment,
- controller=site_deployment.controller,
- )
- ctrl_site_deployment.save()