Setting up Your Development Environment
Just follow the official installation from source instructions.
Macintosh OS X
To get started, fork the repo at https://github.com/getsentry/sentry and clone it:
git clone https://github.com/<your github username>/sentry.git cd sentry
Install Homebrew, if you haven’t already, then run
brew install python@2.
It is highly recommended to develop inside a Python virtual environment, so install
pip install virtualenv virtualenvwrapper
Then append the following to your shell profile (e.g.
~/.bashrc) and reload it:
echo "source /usr/local/bin/virtualenvwrapper.sh" >> ~/.bashrc exec bash
Setup and activate a Python 2.7 virtual environment in the project root:
nvm and use it to install the node version specified in the
brew install nvm echo "source /usr/local/opt/nvm/nvm.sh" >> ~/.bashrc exec bash nvm install
Running the Development Server
Before you can run the development server, you need to first create a development configuration file:
sentry init --dev
This file ends up in
Next, we need to start up our development services. This includes running services like Postgres, Redis, etc.
sentry devservices depends on Docker, which should have gotten installed during
make develop. If not, you can install with
brew cask install docker. After installing Docker, make sure it is running by just launching
sentry devservices up
Lastly, we need to run our database migrations:
Once you’ve successfully stood up your datastore, you can now run the development server:
sentry devserver --workers
When webpack finishes processing, you can find a login prompt for the user account you previously created at http://localhost:8000. From there, you are free to browse the website as an administrator.
Staging Your Changes
You’ve made your changes to the codebase, now it’s time to present them to the Sentry developers. It is recommended to first run the test suite locally in order to find any linting, syntax, or integration before you post a Pull Request.
Running the Test Suite Locally