zulip/scripts
K.Kanakhin e3e52e7284 email-mirror: Move postfix email mirror integration to separate script.
This fixes a performance problem where we were previously starting up
a full Django process (~0.7s even on a fast machine) every time a new
email came in, potentially allowing users to accidentally DoS a Zulip
server.  Now, we just post over HTTPS, allowing the existing thread
pool support to do its job.

- Add script wrapper to communicate postfix pipe with django web server
  over HTTP(S). It uses shared_secret authentication mode.
- Add django view to process messages from email mirror server.
- Clean management command `email-mirror`. Left just functional
  for cron email processing.
- Add routes for new tornado view.
- Change pipe script in master process postfix config template
  based on updated script.
- Add tests.

Tweaked by tabbott to adjust the directory and set better defaults.

Fixes #2421.
2017-04-24 21:24:23 -07:00
..
lib email-mirror: Move postfix email mirror integration to separate script. 2017-04-24 21:24:23 -07:00
nagios missed-emails-sending: Move email sending to separate queue worker. 2017-03-07 20:08:40 -08:00
setup settings: Add support for ZULIP_ORG secrets. 2017-04-18 23:00:10 -07:00
README.md docs: Add README.md files for scripts/ and tools/. 2017-01-17 11:01:27 -08:00
__init__.py Factor out venv-creating code from provision.py. 2016-06-21 11:25:41 -07:00
get-django-setting Activate virtualenv in production Python code. 2016-06-27 19:55:35 -07:00
purge-old-deployments zulip_tools.py: Move zulip_tools.py in scripts/lib. 2016-08-15 16:44:50 -07:00
restart-server Django 1.10: Use uWSGI. 2016-12-13 21:40:43 -08:00
upgrade-zulip Improve shell quoting hygiene 2015-09-25 23:25:08 -04:00
upgrade-zulip-from-git mypy: Remove now-unused type: ignores. 2017-02-18 17:01:01 -08:00
zulip-puppet-apply zulip-puppet-apply: Fix running it as ./zulip-puppet-apply. 2017-02-27 15:25:14 -08: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 http://zulip.readthedocs.io/en/latest/directory-structure.html.