If you work with Cloud Foundry you noticed that most of the development is powered by Concourse CI.
Abacus has 3 Concourse pipelines
Test pipeline
This pipeline builds Abacus and runs tests against Pouch, Couch and Mongo. The last step is to deploy Abacus on Cloud Foundry with in-memory PouchDB as a smoke test.
Future plans: automatic promotion of changes from develop to master branch so we can ensure that master is always stable.
Deploy pipeline
Deploys Abacus large profile and:
- creates and binds DB service to Abacus applications
- maps a route to each Abacus collector and reporting instance
The pipeline uses route mapping to get enable monitoring of a specific Abacus instances through CF router.
Abacus configuration is externalized in abacus-config directory that should be provided to the pipeline. The pipeline supports templates to
- automatically fill the application manifest.yml files
- extract sensitive information in one central place
Future plans: blue-green deployment.
Monitoring pipeline
Pings all Abacus applications using OPTIONS request. Sets up Grafana dashboard and reports the result in Riemann.
Screenshot:
Screenshot:
Future plans: pull more metrics from Abacus.
All pipelines work with custom Docker images we build with the Dockerfiles here.
No comments:
Post a Comment