Skip to main content

Mission Control - allows for easy launching of apps on Marathon

Project description

A project launcher for Marathon

Installation

To install using a terminal:

$ virtualenv ve
$ source ve/bin/activate
(ve)$ pip install mission-control2
(ve)$ export DJANGO_SETTINGS_MODULE="mc2.settings"
(ve)$ ve/bin/django-admin migrate --noinput

Running

Because this system uses GitHub with OAuth2 for authentication there are a few steps one needs to complete in order to get a working system:

Create a super user:

(ve)$ ve/bin/django-admin createsuperuser

Start the application on local address 127.0.0.1:8000:

(ve)$ ve/bin/django-admin runserver

OAuth works with HTTP based callbacks & token exchange, for this to work our local server needs to be reachable on the Internet. Ngrok is a great utility that allows for this. Follow the installation instructions on the Ngrok website for your operating system. Once installed run:

$ ngrok 8000

This will generate a random ngrok.com subdomain for you on which your local server will be reachable. The random subdomain address is useful for adhoc testing but we would recommend you use something predictable. This can be done using the -subdomain command line argument:

$ ngrok -subdomain mytestingtunnel 8000

Next you need to generate a pair of secret keys for OAuth in your GitHub account. You can do this at https://github.com/settings/applications/new:

http://note.io/1s0ZMdb

Once saved, GitHub will have generated the unique keys you will need to complete the OAuth setup:

http://note.io/1Aq99U8

You can specify the following environment variables to configure the app:

# Django settings
SECRET_KEY
PROJECT_ROOT
DATABASE_URL

# Mesos Settings
MESOS_DEFAULT_MEMORY_ALLOCATION
MESOS_MARATHON_HOST
MESOS_HTTP_PORT
MESOS_DEFAULT_CPU_SHARE
MESOS_DEFAULT_INSTANCES

# Log Driver settings
LOGDRIVER_PATH
LOGDRIVER_BACKLOG

# Sentry configuration
RAVEN_DSN
RAVEN_CONFIG

# Social Auth
SOCIAL_AUTH_GOOGLE_OAUTH2_KEY
SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET

Once all this is done visit Mission Control via your custom http://mytestingtunnel.ngrok.com tunnel and sign-up via GitHub.

You’ll be greeted with an empty page since no applications have been created yet. Only Django superusers are allowed to create new applications. You’ll need to login into the Django admin page as the superuser you created earlier and promote the account created via GitHub to being a super user to expose the application creation features.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mission-control2-3.1.1.tar.gz (3.2 MB view details)

Uploaded Source

File details

Details for the file mission-control2-3.1.1.tar.gz.

File metadata

File hashes

Hashes for mission-control2-3.1.1.tar.gz
Algorithm Hash digest
SHA256 b95da08e016e4dcdff33b84b737a3c1131f43bf5acefd4817eb2d0d0031693b7
MD5 60caea7ab94062a63400aa40907caced
BLAKE2b-256 f9dafcba642fd9f105f1fe1124985bbab055b31b98c9c363bf0ebbb02c613b8a

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page