zulip/scripts/setup/flush-memcached
Anders Kaseorg d6df5337ff requirements: Upgrade Python requirements.
Also enable a 24-hour dependency cooldown:
https://docs.astral.sh/uv/concepts/resolution/#dependency-cooldowns

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2026-04-17 15:04:02 -07:00

29 lines
836 B
Python
Executable File

#!/usr/bin/env python3
import os
import sys
BASE_DIR = os.path.join(os.path.dirname(os.path.abspath(__file__)), "../..")
sys.path.append(BASE_DIR)
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "zproject.settings")
from scripts.lib.setup_path import setup_path
setup_path()
import bmemcached
from django.conf import settings
cache = settings.CACHES["default"]
match cache["BACKEND"]:
case "django.core.cache.backends.locmem.LocMemCache":
pass
case "zerver.lib.singleton_bmemcached.SingletonBMemcached":
assert isinstance(cache["OPTIONS"], dict)
client = bmemcached.Client((cache["LOCATION"],), **cache["OPTIONS"])
try:
client.flush_all()
finally:
client.disconnect_all()
case _:
raise ValueError(f"Unrecognized cache backend {cache['BACKEND']}")