Tim Abbott
0dae10eab4
Remove unused secret HASH_SALT.
...
(imported from commit 831c4cb7680b7bf8dadbd930195175e9a4186356)
2015-08-18 20:17:48 -07:00
Luke Faraone
cf7ea9bef9
Allow configure-rabbitmq to be run w/o sudo
...
(imported from commit 98e820d92b42420d6851a967f6675940ee4d8217)
2015-08-16 16:45:07 -07:00
Tim Abbott
b2d01e2da0
[manual] restart-server: Minimize downtime for message sender worker.
...
The manual step here is that we need to do the `puppet apply` before
pushing this commit, or `restart-server` will crash.
Previously we shut down everything in one group, which performed
poorly with supervisor's bad performance on restarting many daemons at
once. Now we shut down the unimportant stuff, then the important
stuff, bring back the important stuff, and then bring back the
unimportant stuff.
This new model has a little over 5s of downtime for the core
user-facing daemons -- which is still far more than would be ideal,
but a lot less than the 13s or so that we had before.
Here's some logs with the current setup for the tornado/django downtime:
2013-12-19 20:16:51,995 restart-server: Stopping daemons
2013-12-19 20:16:53,461 restart-server: Starting daemons
2013-12-19 20:16:57,146 restart-server: Starting workers
Compare with the behavior on master today:
2013-12-19 20:21:45,281 restart-server: Stopping daemons
2013-12-19 20:21:49,225 restart-server: Starting daemons
2013-12-19 20:21:58,463 restart-server: Done!
(imported from commit b2c1ba77f3dc989551d0939779208465a8410435)
2013-12-19 17:21:23 -05:00
Luke Faraone
490af28958
Update URL for user APT key.
...
We're moving to S3, so apt.z.c no longer serves SSL.
(imported from commit a2d376337ddaf2f5fd4ddf193a1ff0732f89c78a)
2013-12-11 10:54:30 -05:00
Tim Abbott
3665a0e289
Fix permissions issues with upgrade-zulip from /root path.
...
(imported from commit b7fce92ac1b7317388debaae2bc3270fe3ae155e)
2013-11-25 17:16:15 -05:00
Zev Benjamin
9b2aa657be
Revert "restart-server: Use 'all' instead of specifying the supervisor jobs to operate on explicitly"
...
This reverts commit acef4c0027b77053497ef6e9f7aa4b61703205c3.
Despite the lower total downtime, this caused more user-facing downtime.
(imported from commit 5cce032bb20abe83853a65ee72bf0bb28af403cc)
2013-11-21 15:14:38 -05:00
Zev Benjamin
a363b7185d
restart-server: Use 'all' instead of specifying the supervisor jobs to operate on explicitly
...
This shaves about 1.5 seconds off our restart time on ls-dev (9s ->
7.5s). Still too slow, but it's a little bit better.
(imported from commit acef4c0027b77053497ef6e9f7aa4b61703205c3)
2013-11-15 15:23:02 -05:00
Tim Abbott
2e5eec5bd3
install: Remove apache restart from install process.
...
We don't use apache in the main app -- only for the SSO situation --
this code was just copied from our own install script. And it caused
problems at CUSTOMER13 because they installed Apache in preparation for
the SSO integration, but restarting it failed.
(imported from commit 3f2961574134847c836e8b69736f60d9f8790201)
2013-11-15 15:04:13 -05:00
Zev Benjamin
974159ec94
Move apache2 restart for SSO sites to restart-server
...
(imported from commit f999e2b0591a11442c1d3fdba2393ecf6e78bad3)
2013-11-15 11:34:48 -05:00
Leo Franchi
68954ee89a
Show info on how to remove lockdir in upgrade-deployment
...
(imported from commit 59984c9b3ce7ef133f0e929836533ae9d6d40707)
2013-11-14 12:00:03 -05:00
Tim Abbott
af21f943a2
Fix paths to zulip_tools for relocated scripts.
...
(imported from commit 9a3664c0f7da1ce6dcb554e7e9ddef5bde6cad7e)
2013-11-14 11:16:16 -05:00
Tim Abbott
9a6f34a807
Make generate_enterprise_secrets.py work regardless of path.
...
(imported from commit c1ab8231fbe907a32b18c02a00cee51011abbb21)
2013-11-14 09:10:10 -05:00
Tim Abbott
037460b24c
Fix permissions on install script.
...
(imported from commit af71b3a4988059c58e741bf94d0c28383c08f704)
2013-11-14 08:56:06 -05:00
Tim Abbott
f9707dd903
Clean up scripts/ by moving helper tools into lib/.
...
(imported from commit 31a99d5cc68524a1399daa50eb1fcda54383a317)
2013-11-14 08:47:11 -05:00
Tim Abbott
486fcfa53f
README
...
(imported from commit c02dfbd15ab6bac5a450d04075b15a7c44e8ddfe)
2013-11-14 08:19:20 -05:00
Tim Abbott
bd607a32e6
unpack-zulip: Update for zulip-server paths containing versions.
...
(imported from commit 9318cab0cfcdf57412afbe9386371c8f9994da9f)
2013-11-14 08:19:20 -05:00
Zev Benjamin
87a6838e0e
enterprise: Log the output of upgrade-zulip and install scripts
...
We may eventually want to rotate the log files, but this seems good
enough for now.
(imported from commit 9a54fa6b40bc62f68e52ef552c1a676856b21829)
2013-11-14 08:08:59 -05:00
Zev Benjamin
1546d06344
upgrade-zulip-stage-2: Tweak log message
...
(imported from commit e8979fa3331119f1f039b3809f6d06fc81fd5e0e)
2013-11-13 16:57:00 -05:00
Zev Benjamin
718a1a8405
upgrade-zulip-stage-2: Restart Apache when using SSO
...
(imported from commit c06be261ec4ab56551962d26cfc41590a64f49e7)
2013-11-13 16:57:00 -05:00
Zev Benjamin
9addde74ec
enterprise: Split upgrade-zulip in two for better future-proofing
...
(imported from commit 808d8d68a6e799aa2962eec90c0953db3c94cfa4)
2013-11-13 16:57:00 -05:00
Zev Benjamin
e8c104012b
Move su_to_zulip into zulip_tools.py
...
(imported from commit 4a79f87dc396da9419a0a1cf5f5b7bb798d5b194)
2013-11-13 16:56:59 -05:00
Zev Benjamin
0b592a27b1
enterprise: Make upgrade-zulip do puppet applies and schema migrations
...
(imported from commit 6d0109e6cd6a02ed5d57b0c0b4c9dc052f158344)
2013-11-13 16:26:04 -05:00
Zev Benjamin
67ed16a12e
enterprise: Make /root/zulip be a symlink to ~zulip/deployments/next
...
(imported from commit 2a0e7f99fe4517e45ad2794b7fa464df08d40db1)
2013-11-13 16:26:04 -05:00
Zev Benjamin
031dfbcc46
zulip_tools.py: Add a make_deploy_path function and make it invokable from the commandline
...
(imported from commit 94578d117864fba76f9353784734c712c89c4bf2)
2013-11-13 16:26:04 -05:00
Zev Benjamin
baecc950a5
enterprise: Remove dead code
...
(imported from commit ca0cdc89f72367d15cd8cfe33666a4cff80deb66)
2013-11-13 16:26:03 -05:00
Tim Abbott
c54322f76a
install: Move DROP SCHEMA PUBLIC to run in zulip database.
...
(imported from commit 1eef44e7255b8fe1314f7763ebfc6c04083305e5)
2013-11-13 15:35:45 -05:00
Tim Abbott
c842b42b12
postgres-init-db: The zulip user doesn't need CREATE DB on enterprise.
...
Also clean up the series of similar blocks.
(imported from commit fdb468bd6be3077bdbf2d72289064397ea04f27a)
2013-11-13 15:35:45 -05:00
Tim Abbott
b4ace85d3a
Make sure everything under /home/zulip is owned by zulip.
...
(imported from commit f6c8b6c0a6dc8b7ada79cb4951818f06faa873e7)
2013-11-13 12:07:15 -05:00
Tim Abbott
0299964051
Make the Zulip user able to edit settings.py.
...
(imported from commit c69ff2b2e9f176ae2e78b76a7b022e00d09e7c00)
2013-11-13 12:02:50 -05:00
Tim Abbott
6bcd5a7ffc
Update installation instructions to include configuring the app.
...
(imported from commit 89395815c32416ec0636efcff12eb76f5d890bbd)
2013-11-13 12:02:50 -05:00
Tim Abbott
6aaa2b1a24
Create the zulip database owned by zulip.
...
(imported from commit cc6e895d9e97bdd9d084c7b1a7204bd5b7ae5cd8)
2013-11-13 12:02:50 -05:00
Tim Abbott
0ec8a7a2f1
install: Make sure we own everything under /var/log/zulip
...
supervisord may start up during the install process and do a bunch of
incorrect stuff, with the net effect of creating files in there owned
by root.
(imported from commit 28379af9680bf9d3c72da196f329abdf8c82c6be)
2013-11-13 12:02:50 -05:00
Tim Abbott
b2d4883165
postgres-init-db: Split into internal and external versions for now.
...
(imported from commit 3516b1377e5914dac2b504961922ef8d08148d1f)
2013-11-13 12:02:50 -05:00
Tim Abbott
f4a9e99498
puppet: Move the postgres dictionary symlink creation to puppet.
...
(imported from commit 823f6683e3d8f3604da68e55dd6761ecb38d4b63)
2013-11-13 12:02:50 -05:00
Tim Abbott
45f21cbb14
Setup the database after the Zulip user is fully setup.
...
Otherwise we may run into permissions issues.
(imported from commit a8013c84796d16146336c2809dcd8cd935b43a7b)
2013-11-13 12:02:50 -05:00
Tim Abbott
e1a8f511fe
configure-rabbittmq: Make it work if you run it a second time.
...
This is to make it easier to just run the install script again if it
fails.
(imported from commit 65deb9d001e061d58deecd44c4683231de76dc79)
2013-11-13 12:02:50 -05:00
Tim Abbott
c7d9bf41bc
Rename SSL certificates for Zulip Enterprise.
...
(imported from commit 4f15f2aee2bcc7450953488c94e8b88734aeaff7)
2013-11-12 15:57:42 -05:00
Tim Abbott
270f5730fa
Rename local server => enterprise in some scripts.
...
(imported from commit 98cdb4c2e1be5a6abb59821eb32f749c058b773b)
2013-11-12 15:57:42 -05:00
Tim Abbott
966fde261a
puppet: Rename local_server => enterprise.
...
(imported from commit 5faa269df5937f6db99098e44aaea7d0a4f2c14a)
2013-11-12 15:57:02 -05:00
Tim Abbott
21f1058fd2
Rename local_server=>enterprise in DB initialization script.
...
(imported from commit 76e26f43858e3baa6ed1b38d67973ed41acf04f3)
2013-11-12 15:57:02 -05:00
Tim Abbott
b461e3c10e
Add a README file documenting the installation process for local server.
...
(imported from commit 4fb149a39acb4dda7ee0d2f038212534f410e064)
2013-11-12 15:57:01 -05:00
Tim Abbott
57b5231063
install: Script the install process more fully.
...
We can probably later merge the create-database code with that of our
internal do-destroy-rebuild-database.
(imported from commit 323932dbf2eb916545d6ebdda70eb1f5e1abb181)
2013-11-12 15:57:01 -05:00
Tim Abbott
2e41515cc3
localserver: Make the zulip user own supervisor.sock.
...
We really should fix this in supervisor itself, since in particular we
lose this setting every time the system is rebooted.
(imported from commit a700078b158808340f5f30812235449c74508cde)
2013-11-12 15:57:01 -05:00
Kevin Mehall
9b6c99c7af
Copy localserver prod-static instead of linking so old files are retained.
...
(imported from commit 728cce9f1b3a47d62f2856a509ed65a3ac6bd451)
2013-11-12 15:50:08 -05:00
Tim Abbott
03bf4ba423
postgres-init-db: Don't hardcode LOCAL_DATABASE_PASSWORD.
...
(imported from commit e2cf6c6c0abb688c77661e4849e7b574b4222e68)
2013-11-12 09:38:43 -05:00
Tim Abbott
5f7c530285
install: Set puppet deploy type for local server.
...
(imported from commit c8b7ac3a7741470851f6fa9c27677e1238c1dce7)
2013-11-12 09:34:25 -05:00
Tim Abbott
26d7411bc0
generate_localserver_secrets: Fix path to camo defaults file.
...
(imported from commit 4456715e038b10978b3ce1e7454d625795f336e7)
2013-11-12 09:34:25 -05:00
Tim Abbott
bf0fda7426
Use the enterprise apt key when installing local server.
...
(imported from commit 24fa7474a77cac7b1d033c6732de6873d4aa9880)
2013-11-12 09:34:25 -05:00
Tim Abbott
30e5543eae
install: Use mkdir -p so that running it again on error works.
...
(imported from commit 361985ce7463c9ccaa7b2eaf1b23ca262e64560d)
2013-11-12 09:34:25 -05:00
Tim Abbott
cb72df39b1
install: Configure rabbitmq during setup process.
...
(imported from commit c610e6bac9a1d6f2c856664ba1e17bbfcc5e551a)
2013-11-12 09:34:11 -05:00
Tim Abbott
8eaef81f6b
localserver: Install site settings via a symlink to /etc/zulip/settings.py.
...
(imported from commit b0bedfe3fc4e9039f30061ae9cbdc34069f1f284)
2013-11-12 09:34:07 -05:00
Tim Abbott
92a230acaa
install: Unpack the initial Zulip tarball in deployments/
...
(imported from commit 2b340aacaa5233fd8708d6392e3c9210e866acbd)
2013-11-12 09:22:50 -05:00
Tim Abbott
5c450afd2d
Split out unpack-zulip from the upgrade script.
...
(imported from commit e41a8ad01c3042c7d877fb3aa17f9617dc2b0121)
2013-11-12 09:22:48 -05:00
Tim Abbott
5b71ceb03c
localserver: Setup apt repo first in install script.
...
(imported from commit d26e3dffcfa2d7feeb58eb8c01e17460a8dfced0)
2013-11-12 09:12:06 -05:00
Tim Abbott
c38bad0b65
zulip-puppet-apply: Fix the force option handling.
...
(imported from commit e3a0f3902ac183c7c30ba0e8ed27e7bd9924ff2b)
2013-11-05 17:06:31 -05:00
Tim Abbott
6b9ebfdad5
localserver: Fix leftover code in install script.
...
This should have been removed when forking from our internal install
script.
(imported from commit cb0c0790ba8343d62ef5f5171b219c458a16e906)
2013-11-05 17:06:31 -05:00
Tim Abbott
6fea6a7856
Make our install script executable.
...
(imported from commit 26be3f76b2654701b7361f2b369e9b82eeeda54e)
2013-11-05 17:06:31 -05:00
Zev Benjamin
b3e6d49d2f
puppet: Switch puppet to using include-style class declarations
...
This allows us to declare classes more than once, which we need as
we're making our class dependency graph more complicated. See
http://docs.puppetlabs.com/puppet/2.7/reference/lang_classes.html#aside-history-the-future-and-best-practices
(imported from commit d4199b0df0d92d166fbc3559957f67ee9cf2ecdc)
2013-11-05 14:14:19 -05:00
Zev Benjamin
787215d743
[manual] Switch over to new /etc/zulip/zulip.conf config file
...
Run the following commands as root before deploying this branch:
# /root/zulip/tools/migrate-server-config
# rm /etc/zulip/machinetype /etc/zulip/server /etc/zulip/local /etc/humbug-machinetype /etc/humbug-server /etc/humbug-local
(imported from commit aa7dcc50d2f4792ce33834f14761e76512fca252)
2013-11-05 14:14:19 -05:00
Kevin Mehall
78b45b61fb
Minify JS in the localserver upgrade tarball.
...
This moves the list of removed files from .gitattributes to
tools/build-local-server-tarball because static/ and tools/ are
necessary for update-prod-static, and it seemed best to keep the
entire list in one place.
(imported from commit 2a447cbde29e90d776da43bb333650a40d4d363c)
2013-11-04 13:40:43 -05:00
Tim Abbott
ca0848b308
Don't purge old deployments on local server, for now.
...
(imported from commit 860e51691d90eee3e594388d514af07c9bb86d6a)
2013-11-04 13:22:42 -05:00
Tim Abbott
5f92ccb422
[manual] Move update-prod-static and update-deployments back to tools/.
...
update-deployment has been replaced by upgrade-zulip for local server
instances, since it won't be running off a git repository, and
update-prod-static won't be needed since we plan on shipping minified
javascript.
When we deploy this, the deployment will fail, and then we'll need to
update the git checkout from which post-receive runs on git.zulip.net.
(imported from commit 86aaedbab09c60ae86ac1d0ae492d0d1bc45569f)
2013-11-04 13:22:41 -05:00
Tim Abbott
bc19be977a
purge-old-deployments: Never purge the currently running deployment.
...
(imported from commit edccfc908f50a66e5c214bca8a5418625ed64bf0)
2013-11-04 13:22:41 -05:00
Tim Abbott
adc5771062
Rename purge-deployments to purge-old-deployments.
...
Since this is a user-facing script, we should make it more clear about
what it does.
(imported from commit eecaed8462a92fe7c688df5c32fea2e088b25058)
2013-11-04 13:22:41 -05:00
Tim Abbott
81aff30127
Add script to upgrade a local server installation.
...
This has a decent amount of code copied from update-deployment, but
there's enough different that I think it's reasonable to write this
and then move some common code into the zulip_tools library.
(imported from commit ae4fdf8125daf802f04f4543a9f1ebae4e9cd3bd)
2013-11-04 13:22:41 -05:00
Tim Abbott
5afb0ed7d1
update-deployment: Remove obsolete deletion of pyc files.
...
Since we do a fresh clone every time, there never are any.
(imported from commit ffd0baba3cf26b019c968b99e7f43c9bcc40b175)
2013-11-04 13:22:41 -05:00
Tim Abbott
a53c7c0f45
Update local server install script for puppet move.
...
(imported from commit 4bd7292dd54e9091747dce44b41b57a42496bc3b)
2013-11-01 10:30:17 -04:00
Tim Abbott
806fab9fe9
localserver: Initial prototype for an install script.
...
(imported from commit b0afd6493e2d5878e3c31d17f0bdee19b34062a5)
2013-10-30 20:39:39 -04:00
Zev Benjamin
8ca76ba13f
Split our puppet configuration in two
...
The 'zulip' module contains the general setup for any server that
will run our app. The 'zulip-internal' module contains configuration
that is internal to Zulip the company.
(imported from commit 23c99dd889577c2917ddbf76892cf8f6cc66a13e)
2013-10-30 15:42:25 -04:00
Zev Benjamin
57bef07832
[manual] Move /etc/humbug-* files into /etc/zulip
...
The moved files are:
humbug-server
humbug-local
humbug-machinetype
Their new names are their old names with 'humbug-' removed.
zulip-puppet-apply must be run before this commit is deployed
(imported from commit f4eb523244d3409b5809c279301225d3fdf0c230)
2013-10-30 15:42:25 -04:00
Tim Abbott
fffd4f3c59
Move zulip_tools library to root of repository.
...
(imported from commit 2fada9d2acbcf81f8e2b3de8caadbf335141dfaa)
2013-10-28 10:54:48 -04:00
Tim Abbott
38c5629505
Move generate_localserver_secrets.py to scripts/setup.
...
(imported from commit 8d9ca2fc78700a38ec3ce5866b2b1032aabe1635)
2013-10-28 10:54:48 -04:00
Tim Abbott
7c6ca81df5
Move zulip-puppet-apply to scripts/.
...
(imported from commit c4e4c98f0a50feb31f7a716e04009d814cf047e7)
2013-10-28 10:54:48 -04:00
Tim Abbott
56e9ad230e
[manual] Move our deployment scripts to scripts/.
...
This will require updating the post-receive code on git.zulip.net to
work.
(imported from commit 2e51fa2d7b891c1138d3f22ae534cfb8a6cf174c)
2013-10-28 10:54:48 -04:00
Tim Abbott
1a448c256e
Move get-django-setting to bin/.
...
(imported from commit b4d908897550f9818b6db862d95bb0cbbc1da15a)
2013-10-28 10:54:48 -04:00
Tim Abbott
cdd7ab895d
Move postgres-init-db to scripts/setup/.
...
(imported from commit 7844fc5cac3e3c90466216e14b2c5b25b4830216)
2013-10-28 10:54:48 -04:00
Tim Abbott
0a44ba2a28
Move servers/configure-rabbitmq to scripts/setup/.
...
(imported from commit 2b4d5ccb88675447ae744fb985246211deef7486)
2013-10-28 10:54:48 -04:00