Exemplo n.º 1
0
def domains_needing_search_index():
    return set(
        list(case_search_enabled_domains()) +
        CASE_LIST_EXPLORER.get_enabled_domains() +
        EXPLORE_CASE_DATA.get_enabled_domains() +
        ECD_MIGRATED_DOMAINS.get_enabled_domains() +
        CASE_API_V0_6.get_enabled_domains())
Exemplo n.º 2
0
    def handle(self, **options):
        domain = options.pop('domain')
        deactivate_domain = options.pop('deactivate_domain')
        deactivate = options.pop('deactivate')

        if deactivate:
            self.update_domains(
                self._domains_needing_deactivation(),
                'deactivation',
                False
            )
            return

        if deactivate_domain:
            EXPLORE_CASE_DATA_PREVIEW.set(deactivate_domain, False,
                                          NAMESPACE_DOMAIN)
            self.stdout.write('\n\nDomain {} deactivated.\n\n'.format(
                deactivate_domain))
            return

        if domain:
            if domain not in ECD_MIGRATED_DOMAINS.get_enabled_domains():
                self.stdout.write('\n\nDomain {} not migrated yet. '
                                  'Activation not possible.\n\n'.format(domain))
                return
            EXPLORE_CASE_DATA_PREVIEW.set(domain, True, NAMESPACE_DOMAIN)
            self.stdout.write('\n\nDomain {} activated.\n\n'.format(domain))
            return

        self.update_domains(
            self._domains_needing_activation(),
            'activation',
            True
        )
Exemplo n.º 3
0
    def _domains_in_beta(self):
        relevant_subs = Subscription.visible_objects.filter(
            is_active=True,
            is_trial=False,
        ).filter(
            Q(plan_version__plan__edition=SoftwarePlanEdition.ADVANCED) |
            Q(plan_version__plan__edition=SoftwarePlanEdition.PRO)
        ).all()
        domains = set([sub.subscriber.domain for sub in relevant_subs])

        enterprise_domains = set(ECD_PREVIEW_ENTERPRISE_DOMAINS.get_enabled_domains())
        domains = domains.union(enterprise_domains)
        migrated_domains = set(ECD_MIGRATED_DOMAINS.get_enabled_domains())

        return domains.intersection(migrated_domains)
Exemplo n.º 4
0
 def migrate_domain(self, domain):
     self.stdout.write('Migrating {}...\n'.format(domain))
     ECD_MIGRATED_DOMAINS.set(domain, True, NAMESPACE_DOMAIN)
     domains_needing_search_index.clear()
     CaseSearchReindexerFactory(domain=domain).build().reindex()
     self.stdout.write('Done...\n\n'.format(domain))