Deployment on Cloud Foundry

Prerequisites

  • Postgres service provisioned

  • Redis service provisioned

  • Object storage provisioned, and bucket created

  • PlantUML server provisioned

  • SMTP Service provisioned

  • GitLab Server (for OAuth2 authentication), GitLab project created (for synchronization)

Prepare manifest.yml

Prepare manifest.yaml file in the root folder and adjust environment variables according to your environment. Refer to manifest.yaml.example file for the format.

Push the app

The Procfile indicates that there are 4 processes in the app. Please refer to Pushing an App with Multiple Processes for a better understanding. After pushing the app, you need to scale up the processes other than the web process.

Create super user

cf enable-ssh architecture-tool
cf ssh architecture-tool
/tmp/lifecycle/shell app
python manage.py createsuperuser

Gitlab Authentication

Add application in Gitlab as per GitLab as OAuth2 authentication service provider.

Perform steps as described in django-allauth Post-Installation.