zulip/scripts
Alex Vandiver ec6f64f7b0 tornado: Perform rolling client restarts after servers are restarted.
Decouple the sending of client restart events from the restarting of
the servers.  Restarts use the new Tornado restart-clients endpoint to
inject "restart" events into queues of clients which were loaded from
the previous Tornado process.  The rate is controlled by the
`application_server.client_restart_rate`, in clients per minute, or a
flag to `restart-clients` which overrides it.  Note that a web client
will also spread its restart over 5 minutes, so artificially-slow
client restarts are generally not very necessary.

Restarts of clients are deferred to until after post-deploy hooks are
run, such that the pre- and post- deploy hooks are around the actual
server restarts, even if pushing restart events to clients takes
significant time.
2024-02-15 15:42:50 -08:00
..
lib tornado: Perform rolling client restarts after servers are restarted. 2024-02-15 15:42:50 -08:00
nagios ruff: Fix SIM118 Use `key in dict` instead of `key in dict.keys()`. 2023-01-04 16:25:07 -08:00
setup teleport: Upgrade to Teleport 14. 2024-01-31 16:41:04 -08:00
README.md
__init__.py
get-django-setting
log-search requirements: Upgrade Python requirements. 2024-01-29 10:41:54 -08:00
purge-old-deployments zulip_tools: Rename may_be_perform_purging to maybe_perform_purging. 2022-01-12 13:21:35 -08:00
refresh-sharding-and-restart sharding: Configure Tornado sharding with nginx map. 2022-09-15 16:07:50 -07:00
reload-clients tornado: Perform rolling client restarts after servers are restarted. 2024-02-15 15:42:50 -08:00
restart-server tornado: Perform rolling client restarts after servers are restarted. 2024-02-15 15:42:50 -08:00
start-server
stop-server start-server/restart-server: Drop privileges if necessary. 2024-02-07 12:33:00 -08:00
upgrade-zulip
upgrade-zulip-from-git
zulip-puppet-apply ruff: Fix PLR1714 Consider merging multiple comparisons. 2023-07-23 15:21:33 -07:00

README.md

This directory contains scripts that:

  • Generally do not require access to Django or the database (those are "management commands"), and thus are suitable to run operationally.

  • Are useful for managing a production deployment of Zulip (many are also used in a Zulip development environment, though development-only scripts live in tools/).

For more details, see https://zulip.readthedocs.io/en/latest/overview/directory-structure.html.