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

From Code to Production

From Code to Production

Slides from my GRWebDev talk about how Modustri (http://modustri.com) uses GitHub, GDM (http://git-dependency-manager.info), Travis CI, Heroku and other tools to continuously ship software.

Jace Browning

September 28, 2015
Tweet

More Decks by Jace Browning

Other Decks in Programming

Transcript

  1. From Code
    to Production
    @JaceBrowning

    View full-size slide

  2. The Technology

    View full-size slide

  3. Continuous
    Integration / Deployment

    View full-size slide

  4. dev
    staging
    prod

    View full-size slide

  5. Feature Request

    Feature Branch

    View full-size slide

  6. feature/delete-machine-photo
    develop

    View full-size slide

  7. $ make run
    $ make ci

    View full-size slide

  8. Feature Branch

    Dev Deployment

    View full-size slide

  9. feature/delete-machine-photo
    develop

    View full-size slide

  10. dev
    staging
    prod

    View full-size slide

  11. Dev Deployment

    Staging Deployment

    View full-size slide

  12. API
    iOS Web
    http://git-dependency-manager.info

    View full-size slide

  13. develop
    staging
    (all components)

    View full-size slide

  14. dev
    staging
    prod

    View full-size slide

  15. Bug Report

    Staging Deployment

    View full-size slide

  16. bug/fix-rotated-images
    staging

    View full-size slide

  17. (same GitHub + Travis CI as features)

    View full-size slide

  18. bug/fix-rotated-images
    staging

    View full-size slide

  19. Staging Deployment

    Production Deployment

    View full-size slide

  20. staging
    master
    (all components)

    View full-size slide

  21. dev
    staging
    prod

    View full-size slide

  22. Summary
    • GitHub manages branches for in-work features
    • Travis CI reports build status to GitHub and Heroku
    • Heroku continuously deploys new features to dev
    • Groups of working features are promoted to staging
    • Bugs discovered in these features are fixed in staging
    • Product is be promoted to production on demand

    View full-size slide