Modern Web Development Workshop

Continuous Integration, Continuous Delivery & Continuous Deployment

Travis CI

Mike Juniper :: Washington DC R&D Center

mjuniper.github.io/presentations/modern-webdev-ci

Continuous Integration

The developer's working copies are synchronized with a shared mainline several times a day.

Continuous Delivery

The logical evolution of continuous integration: Always be able to put a product into production.

Continuous Deployment

The logical next step after continuous delivery: Automatically deploy the product into production.

The reality...

We just want to:

  • Have our tests run automatically when a PR is submitted.
  • Deploy to QA when a PR is merged to master.

Lots of tools available

Jenkins  ::  BuildBot  ::  Strider  ::  Go  ::  Travis CI

How is the open data team doing it?

Travis CI

.travis.yml

deploy.sh

PRs

Builds

Hands On!