mirror of
https://github.com/zulip/zulip.git
synced 2025-11-03 05:23:35 +00:00
748f931999ecac409736d1a0214389c336657c0e
If we run provision.py a second time, there will already be zulip/zulip_test users, so the CREATE USER will fail and the password won't get updated to the newly generated value. By creating the user and setting the password in two commands, we allow the creation to fail without affecting whether the password is set. Also the quoting for updating .pgpass was wrong. (imported from commit 5e249813c17cb4829e4e4958e92aaa30563c5f96)
Getting started
===============
Using Vagrant
-------------
This is the recommended approach, and is tested on OS X 10.10 as well as Ubuntu 14.04.
If your host is OS X, download VirtualBox from <http://download.virtualbox.org/virtualbox/4.3.30/VirtualBox-4.3.30-101610-OSX.dmg>.
If your host is Ubuntu 14.04:
sudo apt-get install vagrant lxc lxc-templates cgroup-lite redir
Once that's done, simply run `vagrant up`. Congrats, you can now visit <http://localhost:9991/> in your browser.
By hand
-------
Install the following non-Python dependencies:
* libffi-dev — needed for some Python extensions
* postgresql 9.1 or later — our database (also install development headers)
* memcached (and headers)
* rabbitmq-server
* libldap2-dev
* python-dev
* redis-server — rate limiting
* tsearch-extras — better text search
On Debian or Ubuntu systems:
sudo apt-get install libffi-dev memcached rabbitmq-server libldap2-dev redis-server postgresql-server-dev-all libmemcached-dev
# If on 12.04 or wheezy:
sudo apt-get install postgresql-9.1
wget https://dl.dropboxusercontent.com/u/283158365/zuliposs/postgresql-9.1-tsearch-extras_0.1.2_amd64.deb
sudo dpkg -i postgresql-9.1-tsearch-extras_0.1.2_amd64.deb
# If on 14.04:
sudo apt-get install postgresql-9.3
wget https://dl.dropboxusercontent.com/u/283158365/zuliposs/postgresql-9.3-tsearch-extras_0.1.2_amd64.deb
sudo dpkg -i postgresql-9.3-tsearch-extras_0.1.2_amd64.deb
# If on 15.04 or jessie:
sudo apt-get install postgresql-9.4
wget https://dl.dropboxusercontent.com/u/283158365/zuliposs/postgresql-9.4-tsearch-extras_0.1_amd64.deb
sudo dpkg -i postgresql-9.4-tsearch-extras_0.1_amd64.deb
# Then, all versions:
pip install -r requirements.txt
./scripts/setup/configure-rabbitmq
./tools/postgres-init-db
./tools/do-destroy-rebuild-database
To start the development server:
./tools/run-dev.py
… and hit http://localhost:9991/.
Running the test suite
======================
One-time setup:
./tools/postgres-init-test-db
./tools/do-destroy-rebuild-test-database
Backend tests:
./tools/test-backend
Frontend tests: TBD
Possible issues
===============
When running the test suite, if you get an error like this:
sqlalchemy.exc.ProgrammingError: (ProgrammingError) function ts_match_locs_array(unknown, text, tsquery) does not exist
LINE 2: ...ECT message_id, flags, subject, rendered_content, ts_match_l...
^
… then you need to install tsearch-extras, described above. Afterwards, re-run the init*-db and the do-destroy-rebuild*-database scripts.
Description
Zulip server and web application. Open-source team chat that helps teams stay productive and focused.
Readme
Apache-2.0
866 MiB
Languages
Python
58.5%
TypeScript
18.1%
JavaScript
9.1%
CSS
3.9%
HTML
3.6%
Other
6.6%