Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Safe and Happy Deploys Using Automation

Safe and Happy Deploys Using Automation

Here at Zeek Interactive, I’ve put together a system that allows us to deploy code worry-free. The system automatically brings in PHP dependencies, WordPress plugins, builds assets, runs security scans, deploys the files quickly and performs automated visual regression tests, all while keeping the team informed via Slack on the status of the deploy.

This talk is recommended for anyone who has ever had to get code from their local machine and push it to a server. If you have ever been frustrated or annoyed at deploying code and wondered if there was a better way, don’t miss this talk.

Aaron Holbrook

June 10, 2018
Tweet

More Decks by Aaron Holbrook

Other Decks in Technology

Transcript

  1. NO

  2. YES

  3. Git Buddy Zeek Pusher Server Composer Core Repo Deploy Repo

    Frontend Build Commit (internally) Push to server rsync git push Visual Regression Test Notify Team
  4. Git Buddy Zeek Pusher Server Composer Core Repo Deploy Repo

    Commit (internally) Push to server rsync git push Visual Regression Test Notify Team Frontend Build
  5. git

  6. Git Buddy Zeek Pusher Server Composer Core Repo Deploy Repo

    Commit (internally) Push to server rsync git push Visual Regression Test Notify Team Frontend Build
  7. ‣ Syntax checking ‣ Security checking ‣ Environmental Variables ‣

    Install dependencies ‣ Compile assets (JS/CSS) ‣ Move files to server ‣ Visual Regression Testing ‣ Notify team via Slack
  8. Buddy 25% off any plan for WordCamp Orange County* Register

    within 14 days with the code: ‘Orange County WordCamp’. *This talk is not sponsored or affiliated with Buddy, I just really like their service!
  9. Git Buddy Zeek Pusher Server Composer Core Repo Deploy Repo

    Commit (internally) Push to server rsync git push Visual Regression Test Notify Team Frontend Build
  10. ‣ Builds and deploys files ‣ Runs on a VPS

    (Virtual Private Server) ‣ Uses git and rsync ‣ Two repos (CORE and DEPLOY) SUMMARY
  11. ‣ Is NOT connected to GitHub ‣ Mirrors the server

    ‣ Does have compiled assets ‣ Does have dependencies ‣ Is directly connected to GitHub ‣ Mirrors the codebase ‣ Does NOT have compiled assets ‣ Does NOT have dependencies CORE REPO DEPLOY REPO REPOS
  12. Git Buddy Zeek Pusher Server Composer Core Repo Deploy Repo

    Commit (internally) Push to server rsync git push Visual Regression Test Notify Team Frontend Build
  13. Git Buddy Zeek Pusher Server Composer Core Repo Deploy Repo

    Commit (internally) Push to server rsync git push Visual Regression Test Notify Team Frontend Build
  14. Git Buddy Zeek Pusher Server Composer Core Repo Deploy Repo

    Commit (internally) Push to server rsync git push Visual Regression Test Notify Team Frontend Build
  15. Git Buddy Zeek Pusher Server Composer Core Repo Deploy Repo

    Commit (internally) Push to server rsync git push Visual Regression Test Notify Team Frontend Build
  16. Git Buddy Zeek Pusher Server Composer Core Repo Deploy Repo

    Commit (internally) Push to server rsync git push Visual Regression Test Notify Team Frontend Build
  17. Git Buddy Zeek Pusher Server Composer Core Repo Deploy Repo

    Commit (internally) Push to server rsync git push Visual Regression Test Notify Team Frontend Build
  18. Git Buddy Zeek Pusher Server Composer Core Repo Deploy Repo

    Commit (internally) Push to server rsync git push Visual Regression Test Notify Team Frontend Build
  19. Git Buddy Zeek Pusher Server Composer Core Repo Deploy Repo

    Commit (internally) Push to server rsync git push Visual Regression Test Notify Team Frontend Build
  20. Git Buddy Zeek Pusher Server Composer Core Repo Deploy Repo

    Commit (internally) Push to server rsync git push Visual Regression Test Notify Team Frontend Build
  21. Git Buddy Zeek Pusher Server Composer Core Repo Deploy Repo

    Commit (internally) Push to server rsync git push Visual Regression Test Notify Team Frontend Build