zulip/scripts
Anders Kaseorg b7b7475672 python: Use standard secrets module to generate random tokens.
There are three functional side effects:

• Correct an insignificant but mathematically offensive bias toward
repeated characters in generate_api_key introduced in commit
47b4283c4b4c70ecde4d3c8de871c90ee2506d87; its entropy is increased
from 190.52864 bits to 190.53428 bits.

• Use the base32 alphabet in confirmation.models.generate_key; its
entropy is reduced from 124.07820 bits to the documented 120 bits, but
now it uses 1 syscall instead of 24.

• Use the base32 alphabet in get_bigbluebutton_url; its entropy is
reduced from 51.69925 bits to 50 bits, but now it uses 1 syscall
instead of 10.

(The base32 alphabet is A-Z 2-7.  We could probably replace all of
these with plain secrets.token_urlsafe, since I expect most callers
can handle the full urlsafe_b64 alphabet A-Z a-z 0-9 - _ without
problems.)

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2020-09-09 15:52:57 -07:00
..
lib python: Prefer --flag=option over --flag option. 2020-09-03 17:51:09 -07:00
nagios python: Pre-fix a few spots for better Black formatting. 2020-09-03 17:51:09 -07:00
setup python: Use standard secrets module to generate random tokens. 2020-09-09 15:52:57 -07:00
README.md cleanup: Delete trailing newlines. 2019-08-06 23:29:11 -07:00
__init__.py Factor out venv-creating code from provision.py. 2016-06-21 11:25:41 -07:00
get-django-setting setup_path_on_import: Replace with setup_path function. 2020-02-25 15:40:21 -08:00
purge-old-deployments python: Elide nargs for argparse flag arguments. 2020-09-03 16:17:14 -07:00
refresh-sharding-and-restart sharding: Add basic sharding configuration for Tornado. 2020-05-20 13:47:20 -07:00
restart-server python: Elide default for store_{true,false} argparse arguments. 2020-09-03 16:17:14 -07:00
upgrade-zulip Use #!/usr/bin/env for bash shebangs. 2018-12-17 17:21:08 -08:00
upgrade-zulip-from-git Use #!/usr/bin/env for bash shebangs. 2018-12-17 17:21:08 -08:00
zulip-puppet-apply python: Prefer --flag=option over --flag option. 2020-09-03 17:51:09 -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.