No description, website, or topics provided.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
cabotage
docker-compose
migrations
scratch
.dockerignore
.gitignore
Dockerfile
Dockerfile.release
LICENSE
Pipfile
Pipfile.lock
README.md
docker-compose.yml
envconsul-linux-amd64
gunicorn.conf
manage.py

README.md

Cabotage App

Deployment tooling built on top of Kubernetes, Hashicorp Consul, Hashicorp Vault, Docker, and Python to power automated rollout and management of software and configuration changes, including

  • end-to-end verified TLS
  • secure management of secrets
  • continuous delivery of changes

See a two-minute video demo from late February 2018.

Originally developed for use within Python Software Foundation infrastructure. See the PyPI infrastructure pull request for more on design goals.

Basics

  1. pipenv install --three --dev
  2. pipenv shell

Set Environment Variables

Update cabotage/server/config.py, and then run:

$ export APP_SETTINGS="cabotage.server.config.DevelopmentConfig"

or

$ export APP_SETTINGS="cabotage.server.config.ProductionConfig"

Create DB

$ python manage.py create_db
$ python manage.py db init
$ python manage.py db migrate
$ python manage.py create_admin
$ python manage.py create_data

Run the Application

$ python manage.py runserver

Access the application at the address http://localhost:5000/

Want to specify a different port?

$ python manage.py runserver -h 0.0.0.0 -p 8080

Testing

Without coverage:

$ python manage.py test

With coverage:

$ python manage.py cov