Arnaud Arnaud - 5 months ago 25
Python Question

Create a project from command line

Sentry catches loggings and errors from client applications.

The only way I know of creating a project in Sentry is by manually submitting the form in the Web application interface.

I'm searching for a way to create a project into Sentry from the command line in any way (options, config file) ?

This would be greatly valuable for deployment scripts. Otherwise no automation is possible.

Just found this discussion while Googling around but no answer:

https://groups.google.com/d/topic/getsentry/pWglAEHaPUk/discussion

Any idea?

Answer

It's a django project, of course you can:

from sentry.models import Project
project = Project(...)
...
project.save()

Edit: You could write a custom management command to get functionality on the command line

Edit by question's author: Yes indeed it is a django project, so like a django project I automated my deployment in the three following steps:

  1. Start Sentry, create users, teams and projects and adjust settings from the admin Web interface
  2. Run dumpdata like you'd do with any django project (sentry will implicitly call manage.py):

    sentry --config=sentry.conf.py dumpdata --indent=2 auth > auth_data.json

    sentry --config=sentry.conf.py dumpdata --indent=2 sentry > sentry_data.json

  3. Deploy step by step:

    sentry --config=sentry.conf.py syncdb --noinput

    sentry --config=sentry.conf.py migrate

    sentry --config=sentry.conf.py loaddata auth_data.json

    sentry --config=sentry.conf.py loaddata sentry_data.json

Works pretty well. Hope this will help others.