Slide 1

Slide 1 text

SETTING UP A TRAVIS-CI CONTINUOUS INTEGRATION ENVIRONMENT FOR YOUR DRUPAL MODULE

Slide 2

Slide 2 text

OVERVIEW OF PRESENTATION • A little about CI/CD. • Demo: Configure Travis-CI for a Drupal module project using Pull Request strategy. • Demo: Describe and show Travis integration with OpenShift Drupal project. • A little on the near future of deployment. • Q & A

Slide 3

Slide 3 text

FIRST LET’S REVIEW A TYPICAL WORKFLOW. 1. Issues. 2. Developing code and adding features or fixes. 3. Testing and staging. 4. Merging accepted features. 5. Deploying changes.

Slide 4

Slide 4 text

A CLOSER INSPECTION…

Slide 5

Slide 5 text

WHAT IS CONTINUOUS INTEGRATION? • It all boils down to automating as much as possible. • Things like testing, linting, building, deploying. • There is a lot to consider. • But this talk will mostly deal with automated testing in the framework of CI.

Slide 6

Slide 6 text

WHY CONTINUOUS INTEGRATION IS IMPORTANT • Helps coordinate efforts between multiple developers. • Better understanding of your application stack. • Reduces stress associated to not knowing. • Make merging fun.

Slide 7

Slide 7 text

TRAVIS-CI: CONTINUOUS INTEGRATION SERVICE FOR GITHUB PROJECTS • Your project needs to be on GitHub.. • Travis-CI lowers the bar for getting started in this world. • Travis-CI and GitHub are cool. • Travis-CI does not give you as much control as Jenkins-CI. But that just means less headaches.

Slide 8

Slide 8 text

TRAVIS CI IS A GOOD WAY TO GET STARTED • Baby step • Travis-CI is an easier way to get started in this world compared with JenkinsCI.

Slide 9

Slide 9 text

DRUPAL MODULES VS. DRUPAL PROJECTS • Simply, Drupal projects will require a different setup than Drupal modules. • This should be obvious.

Slide 10

Slide 10 text

DEMO DRUPAL MODULE • Travis-CI is configured via a .travis.yml file. • The easiest thing to do? Fork a working repo. • The purpose of the demo is to do this stepwise. • Add travis.yml to project. via some pull requests. • Enable travis project. • Edit README and push. • Done.

Slide 11

Slide 11 text

DEMO DRUPAL PROJECT ON OPENSHIFT • The main point is to demonstrate deployment. • Add travis.yml • Configure using travis gem. • Enable Travis-CI for project. • Edit README and push. • Done.

Slide 12

Slide 12 text

A LITTLE PROGNOSTICATION: OPENSHIFT AND DOCKER. • RedHat has partnered with dotCloud to bring Docker to OpenShift. • Deployment will become trivial.

Slide 13

Slide 13 text

QUESTIONS AND COMMENTS • Contact information: • David Kinzer, Jenkins Law Library • [email protected] • @dtkinzer