- Tentative Time: 3:00-4:30
- Length: 90 minutes
- Format: Hands-on, building, interactive
Josh W Lewis is a multi-discipline engineer who has been building web applications and development tooling for nearly a decade. Lately, he's been building new workflows for developers on GitHub, delivering Heroku Pipelines and Review Apps and leading the development of Heroku CI as part of a small, high-performance team.
Continuous Integration and continuous delivery are the key to code quality, product agility, and engineering velocity. In this session, you’ll learn how your team can use GitHub, Heroku Pipelines, and Heroku CI to make continuous delivery simple and flexible. The Git-based methodology provides for a pipeline through which code begins as a fully executable pull request, goes through automated unit and integration tests, is automatically merged to test and staging apps, and is then deployed to production with a single click. Some customers are able to deploy features and fixes up to 500+ times a week, with very few rollbacks from production. Developers with an intermediate level of experience will benefit the most from this workshop.
Requirement | Mandatory? | Where to get it | Comments |
---|---|---|---|
An internet connection | Yes | Conference WiFi | |
A modern web browser | Yes | google.com/chrome | |
A Heroku account | Yes | signup.heroku.com | |
A verified Heroku Account | No | dashboard.heroku.com/account/billing | A credit card is required for advanced features like addons and CI. This demo uses free resources. |
Resource | Where to get it |
---|---|
Slides | hrku.co/universe-workshop |
Demo Repository | heroku/memefab |
Demo App | memefab.herokuapp.com |
- Hi, I'm Josh
- What is Heroku?
- Brief description; TL;DR it's a PaaS
- Quick walkthrough of demo app
- What are Heroku Pipelines?
- A workflow designed for high-performing teams
- Builds on workflows you already have in GitHub
- Illustrate the full development workflow GIF
-
Showcase the entire workflow
- Open a PR
- Inspect the PR app
- Check CI test results
- Merge the PR
- Watch staging auto-deploy
- Inspect staging
- Check CI results
- Promote to prod
-
Your turn! We'll guide you through
- Setting up a Pipeline
- Setting up automatic deploys to staging
- Setting up automatic review apps
- Setting up automatic CI runs
- Setting up promotions to production
- Taking a feature from development through staging and to production
- A web browser (tablet or laptop is fine, smartphone is harder, but should work)
- An internet connection
- A GitHub account (logged in)
- A Heroku account
- Pause for 5 minutes, staff helps folks get on wifi, create/login to accounts
- Walkthrough
- Fork the sample repository
- Create a staging app (via Heroku Button)
- Add it to the pipeline
- Pause for Q&A, staff patrolling and helping perform steps
- Walkthrough
- Connect pipeline to your repository
- Enable automatic deploys
- Enable review apps
- Pause for Q&A, staff patrolling and helping perform steps
- Walkthrough
- Create production app (via Heroku Button)
- Add it to the same pipeline
- Pause for Q&A, staff patrolling and helping perform steps
- Walkthrough
- Enable CI
- caveat: this step is optional because it costs a few cents and requires CC
- Enable CI
- Short pause for Q&A, staff patrolling and helping perform steps
- Walkthrough
- Ship a feature
- Open a PR
- Inspect the PR app
- Check CI results for feature branch (if applicable)
- Merge the PR
- Watch auto-deploy to master
- inspect staging app
- Check CI results for master (if applicable)
- Promote to prod
- Inspect running prod app
- Ship a feature
- Short pause while attendees work through steps