image/svg+xml
DevOps
Technology Operations
Quality Assurance (QA)
Development
(Software Engineering)
How do we fix this?
How do we know it will work for us?
How do we know it's still working?
How do we know if it works after I make this change?
How do we know it works?
What is DevOps?
What are the risks you face, as a Drupal site owner?
Project Risk, Developers who fail to deliver
Opportunity cost of falling behind
Service Provider issue
Loss of connectivity/bandwidth
Hardware failure
Reliable hosting, maintenance
Cost of upgrades
Attackers - spam, hacks
What happens the day after your new Drupal site
launches?
DrupalGeddon!
Thought of something new but can't afford it
It doesn't have everything we need
Site seems sluggish
What happens the day your new Drupal site launches?
Yippee!
We Got it done!
Celebrate!
Quality-orientedDrupal DevOps
by John LockeFreelock LLC
StatesPillarMineReactor
Check_mkRRDTool/PNP4NagiosaNagPagerDuty
DockerfileDocker RegistryHost Services
Gitolite
Trigger salt reactor
Trigger Jenkins build
Loads ssh key with agent
Uses scripts on stage server to deploy
Uses drush aliases to find sites
Triggered by gitolite
Key Takeaways
The launch of a site is one day.The site should last for the long haul.
It's not a question of how much it costsInstead ask how much you should spend,and where that generates the most value
DevOps makes development an ongoingprocess, better aligned with businessneeds!
Screenshot ComparisonsBehavior Driven Design (Behat)Integration Testing (Red Test)
Drupal Sites
DevOps Tools for:
Servers
Containers
Testing
Screen Shot Comparisons
SSC
Behavior Driven Design
Behat
Integration Testing
Red Test
Clear Communication, expectations
Can handle more than original design
Built to last
Attention to Detail
Tours, embedded help
User Training
Unit Testing
Identify workflows/action diagrams
Identify/build Data model
Define user stories
Backup verification
Review
Checklists
Dashboards
Performance evaluation
Expiration dates
Hacked Modules report
Site Audit
Configuration Management
Dockerfiles
Docker Registry
Salt
Backups
File backups in different physical locations
Rsync.net
Backuppc
Image snapshots
AWS, GCE, Digital Ocean snapshots
Monitoring
Chat bots
Prometheus?
Nagios/Icinga
Deployment
Docker containers
Jenkins, build scripts
Git Flow Branch strategy
Gitolite
John Locke, Freelock
john@freelock.com@john:matrix.freelock.com