/flamingo

Application management for Google Cloud Platform's serverless products

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Build Status Maintainability Test Coverage python

Flamingo

Deployment

It's recommended to use Google Cloud Build to deploy the Flamingo Server application to Cloud Run

For this, you'll need to add 2 Variables to the build configuration: _GIT_ACCESS_TOKEN and URL (see Environment Variables section for more info)

Option A: Use Run on Google Cloud button

Run on Google Cloud

Option B: Create your own deployment

Create a new Cloud Build trigger selecting the option Cloud Build configuration file (yaml or json)

Setup

  • Create a service account for Flamingo: he's your new DevOps.
  • Add this account email to all the projects you want Flamingo to manage:
    • Cloud Build Editor
    • Cloud SQL Admin
    • Container Registry Service Agent
    • Service Account Admin
    • Service Account User
    • Project IAM Admin
    • Cloud Run Admin
    • Secret Manager Admin
    • Source Repository Administrator
    • Storage Admin
    • Cloud Datastore Admin
    • Pub/Sub Admin
  • Enable Firestore using Datastore mode: needed to store Flamingo's data
  • Enable Resource Manager: needed to manage app's permissions
  • Enable IAM: needed to manage app's service account
  • Enable Cloud SQL: needed to manage app's SQL database
  • Enable App Engine Admin: needed to fetch project's default location
  • Deploy Flamingo as the service account create previously

Environment Variables

  • FLAMINGO_URL: the public URL of the service to receive build hooks
  • GIT_ACCESS_TOKEN: add the personal access token to allow build notification with code diff