| import os |
| import base64 |
| from django.db.models import F, Q |
| from planetstack.config import Config |
| from observer.openstacksyncstep import OpenStackSyncStep |
| from core.models.site import Site, SiteDeployments, ControllerSiteDeployments |
| from observer.steps.sync_controller_site_deployments import * |
| |
| class SyncSites(OpenStackSyncStep): |
| provides=[Site] |
| requested_interval=0 |
| |
| def sync_record(self, site): |
| site.save() |
| |
| def delete_record(self, site): |
| # delete associated controllers site deployments |
| ctrl_site_deployments = ControllerSiteDeployments.objects.filter(site_deployment__site=site) |
| ctrl_site_deploy_deleter = SyncControllerSiteDeployments().delete_record |
| for ctrl_site_deployment in ctrl_site_deployments: |
| ctrl_site_deployment_deleter(ctrl_site_deployment) |
| |
| # delete site deployments |
| site_deployments = SiteDeployments.objects.filter(site=site) |
| for site_deployment in site_deployments: |
| site_deployment.delete() |
| |
| |
| |