Lagoon
OpenSource Build & Deployment System for OpenShift & Kubernetes
DrupalCamp
Montreal 2018
Pain points of Development
- Locally not the same as in Production
- Every site needs something different
- Branches & Pull Requests but no testing for them
- Deployments are scarry
History
- 2015
- Local Development on Vagrant
- 2016:
- Too much pain - need something faster
- Local Development in Docker
- Decoupled Requirements
- First Production Site in Docker
- 2017:
- We like that!
- Open Source FTW - Lagoon
Open Source
Proprietary Hosting
vs.
Proprietary Hosting
Open Sourceness of Drupal Hosting
- ✅ Drupal
- ❌ Hosting Platform
- ✅ PHP
- ✅ Nginx
- ✅ MySQL
- ✅ Operating System
- ✅ Linux
Lagoon is fully Open Source
- All Docker Images
- All Service Configurations
- Build & Deploy Scripts
- Test Infrastructure
Lagoon uses Open Source
- OpenShift
- Kubernetes
- Alpine Docker Images
TL;DR;
Local
OpenShift
Kubernetes
Lagoon
Too Short; Want More.
Local
OpenShift
Kubernetes
Lagoon
- Reads docker-compose.yml
- Build Images
- Setup OS Projects
- Push Images to OS Registry
- Configure Resources
- Monitor Deployments
Develop with docker-compose
Notifications
Webhooks
Git Push
Orchestration
Microservices
Runs itself in OpenShift
Lagoon deploys Lagoon
Lagoon is integration tested
- Start of OpenShift cluster
- Builds newest Images
- Runs deployments of Drupal, Nginx, etc.
- Tests all features
- Only tested images are pushed
Lagoon runs Docker Images
- Whatever you can put into Docker
- It deploys with Lagoon
Lagoon runs allows your processes
- No forced workflows
- Define your own tasks during build & rollout
Lagoon is for Developers
- Locally the exact same Configs, Services and Versions as in Production
- Individual Sites for every Branch & PullRequest
- Automated Testing
Lagoon is for Site Builders
- Full support for Configuration Management and Features
- Want to change something in Production but unsure? Create a Test Site and test first!
Lagoon is for Clients
- Happy Developers :)
- Automated deploy system makes releases easy and painless
Demo
Wanna help?
- https://github.com/amazeeio/lagoon
- Don't worry - everything tested
- Native Kubernetes support?
- More CMS support?
- Your ideas!
Lagoon DrupalCamp Montreal 2018
By Michael Schmid
Lagoon DrupalCamp Montreal 2018
- 1,374