4.41.0
This commit is contained in:
29
app/oneshot/mark_aliases_as_partner_created.py
Normal file
29
app/oneshot/mark_aliases_as_partner_created.py
Normal file
@ -0,0 +1,29 @@
|
||||
#!/usr/bin/env python3
|
||||
import argparse
|
||||
|
||||
|
||||
from app.log import LOG
|
||||
from app.models import Alias, SLDomain
|
||||
from app.db import Session
|
||||
|
||||
parser = argparse.ArgumentParser(
|
||||
prog="Mark partner created aliases with the PARTNER_CREATED flag",
|
||||
)
|
||||
args = parser.parse_args()
|
||||
|
||||
domains = SLDomain.filter(SLDomain.partner_id.isnot(None)).all()
|
||||
|
||||
for domain in domains:
|
||||
LOG.i(f"Checking aliases for domain {domain.domain}")
|
||||
for alias in (
|
||||
Alias.filter(
|
||||
Alias.email.like(f"%{domain.domain}"),
|
||||
Alias.flags.op("&")(Alias.FLAG_PARTNER_CREATED) == 0,
|
||||
)
|
||||
.enable_eagerloads(False)
|
||||
.yield_per(100)
|
||||
.all()
|
||||
):
|
||||
alias.flags = alias.flags | Alias.FLAG_PARTNER_CREATED
|
||||
LOG.i(f" * Updating {alias.email} to {alias.flags}")
|
||||
Session.commit()
|
Reference in New Issue
Block a user