Workflow Tools - DrupalCamp Atlanta 2013

17
Workflow Tools Stay Out of Production! Use WF to Deploy Code & Content

description

Presentation video now available! https://www.drupalcampatlanta.com/session/stay-out-production-use-workflow-tools-deploy-your-content-and-code STOP creating content in production. DON'T be limited by a single content server. USE wf tools to deploy your content. Wouldn't it be nice to deploy database (content/config) changes the same way you deploy code? (You should be nodding your head). With WF Tools, both content creators and developers start their changes by logging into a WF Tools "management instance" to create a new "job." WF Tools then uses Jenkins and other server-side tools to spin up a new site (e.g., job1.example.com) with its own git branch (think: git-flow "feature"). All content changes are tracked so that, when the job is finished, WF Tools can move them to a staging server via the Deploy module, and the git branch is merged into the staging branch. The same process happens when the changes are ready for production. The mantra is: many small jobs > fewer large ones! At DrupalCon Prague, Dave Hall (WF Tools maintainer) and Tim Holt (of Acquia) presented on the WF Tools module, which has the potential to revolutionize content deployment as we know it. I recommend you watch the DrupalCon Prague presentation, and then come to this one for more details and discussion of implementation best practices. This presentation is geared toward developers, devops, and site builders of medium- to enterprise-level websites. Read more at drupal.org/project/wf

Transcript of Workflow Tools - DrupalCamp Atlanta 2013

Page 1: Workflow Tools - DrupalCamp Atlanta 2013

Workflow ToolsStay Out of Production! Use WF to Deploy Code & Content

Page 2: Workflow Tools - DrupalCamp Atlanta 2013

@Mediacurrent

Derek DeRapsDrupal DeveloperMediacurrent

Yesterday

Page 3: Workflow Tools - DrupalCamp Atlanta 2013

WTF is

?WFT

Page 4: Workflow Tools - DrupalCamp Atlanta 2013

WF is NOT a

module.

Page 5: Workflow Tools - DrupalCamp Atlanta 2013

Well…

● WF is a module, + much more● WF is an approach● WF is a method● WF is a wrapper @ other tools● WF is a new best practice

Page 6: Workflow Tools - DrupalCamp Atlanta 2013

It’s the icing on a 5 layer cake.

● Git● SSH● Drush● Jenkins● Deploy & UUID modules○ + many more

Page 7: Workflow Tools - DrupalCamp Atlanta 2013

Who made it, and Why?

● Dave Hall (Pfizer)● Tim Holt (Acquia)● Drupal workflow sucks● No current “best practice” for

deploying content● New tools maturing

Page 8: Workflow Tools - DrupalCamp Atlanta 2013

Pause to watch entire WF presentation from Prague

(not really, but do watch it at home!)

Page 9: Workflow Tools - DrupalCamp Atlanta 2013

Old hat.

Page 10: Workflow Tools - DrupalCamp Atlanta 2013

New hotness!

Page 11: Workflow Tools - DrupalCamp Atlanta 2013

OK THAT’S AWESOME

i can haz some??“ ”

Page 12: Workflow Tools - DrupalCamp Atlanta 2013

https://github.com/proviso/proviso

Yes, but don’t muck up your local stack.

Page 13: Workflow Tools - DrupalCamp Atlanta 2013

STEP 1 of 3Download the latest “WF Example Profile”

Page 14: Workflow Tools - DrupalCamp Atlanta 2013

STEP 2 of 3

Drupal setup● Drush make (must use 5.x)● Create “Reply” bundle “job_comment”● Enable all wf_example modules● Feature-revert all● Set variable ‘wf_sandbox_basepath’● Configure git module

Page 15: Workflow Tools - DrupalCamp Atlanta 2013

Rules → Jenkins jobs● Rule: After saving a new workflow job

○ Job: create-branch, et cetera...● Rule: After a job is approved

○ Job: merge-branch● Rule: After a job is deployed to the final environment

○ Job: delete-sandbox○ Job: sync-dr○ Job: prod-snapshot○ Job: prod-archive

● Rule: After deleting a workflow job○ Job: delete-sandbox

STEP 3 of 3

Page 16: Workflow Tools - DrupalCamp Atlanta 2013

Demo ;)

Page 17: Workflow Tools - DrupalCamp Atlanta 2013

Thank You!

Questions?

@Mediacurrent Mediacurrent.com

[email protected]

slideshare.net/mediacurrent