diff --git a/scripts/lib/sharding.py b/scripts/lib/sharding.py index 2b4c9ab8e9..089bb7b76b 100755 --- a/scripts/lib/sharding.py +++ b/scripts/lib/sharding.py @@ -1,8 +1,10 @@ #!/usr/bin/env python3 import argparse import filecmp +import grp import json import os +import pwd import subprocess import sys @@ -77,6 +79,14 @@ def write_updated_configs() -> None: data = {"shard_map": shard_map, "shard_regexes": shard_regexes} sharding_json_f.write(json.dumps(data) + "\n") + for fh in (nginx_sharding_conf_f, sharding_json_f): + os.fchown( + fh.fileno(), + pwd.getpwnam("zulip").pw_uid, + grp.getgrnam("zulip").gr_gid, + ) + os.fchmod(fh.fileno(), 0o644) + parser = argparse.ArgumentParser( description="Adjust Tornado sharding configuration", diff --git a/scripts/refresh-sharding-and-restart b/scripts/refresh-sharding-and-restart index f684a58bb8..14c0ec9caa 100755 --- a/scripts/refresh-sharding-and-restart +++ b/scripts/refresh-sharding-and-restart @@ -12,10 +12,6 @@ if ! [ -e /etc/zulip/nginx_sharding_map.conf.tmp ] || ! [ -e /etc/zulip/sharding exit 1 fi -chown zulip:zulip /etc/zulip/nginx_sharding_map.conf.tmp -chmod 644 /etc/zulip/nginx_sharding_map.conf.tmp -chown zulip:zulip /etc/zulip/sharding.json.tmp -chmod 644 /etc/zulip/sharding.json.tmp mv /etc/zulip/nginx_sharding_map.conf.tmp /etc/zulip/nginx_sharding_map.conf mv /etc/zulip/sharding.json.tmp /etc/zulip/sharding.json