mirror of
https://github.com/zulip/zulip.git
synced 2025-10-29 11:03:54 +00:00
flush-memcached: Respect MEMCACHED_LOCATION; handle errors.
Fixes #13238. Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
This commit is contained in:
@@ -1,6 +1,25 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
#!/usr/bin/env python3
|
||||
|
||||
# Flush memcached
|
||||
echo "Flushing memcached..."
|
||||
echo 'flush_all' | nc -w 1 localhost 11211
|
||||
import os
|
||||
import socket
|
||||
import sys
|
||||
from urllib.parse import urlsplit
|
||||
|
||||
BASE_DIR = os.path.join(os.path.dirname(os.path.abspath(__file__)), "../..")
|
||||
sys.path.append(BASE_DIR)
|
||||
|
||||
import scripts.lib.setup_path_on_import
|
||||
from zproject import settings
|
||||
|
||||
url = urlsplit("//" + settings.MEMCACHED_LOCATION)
|
||||
|
||||
print("Flushing memcached...")
|
||||
with socket.create_connection((url.hostname, url.port)) as f:
|
||||
f.sendall(b"flush_all\r\n")
|
||||
response = b""
|
||||
while b"\n" not in response:
|
||||
response += f.recv(4096)
|
||||
if response != b"OK\r\n":
|
||||
print(response, file=sys.stderr)
|
||||
print("Failed to flush memcached", file=sys.stderr)
|
||||
sys.exit(1)
|
||||
|
||||
Reference in New Issue
Block a user