Upload
mack-hardy
View
1.881
Download
2
Tags:
Embed Size (px)
DESCRIPTION
Mack Hardy presenting "Everything in Code" on the drupal development tools of Features, make files and drush. Presented at the 2nd Pacific Northwest Drupal Summit http://pnwdrupalsummit.org/2010/sessions/everything-code Mack is the founder of Affinity Bridge http://affinitybridge.com
Citation preview
Everything in Code
Mack Hardy & Zoë Neill-St. ClairNerds in residence at Affinity Bridge
WHATdo we mean by "everything"?
the things we do besides code: • the very act of downloading &
installing modules• all the configuration• post-go-live changes
source control}
WHYare people who have Everything In Code so
creepily happy?
config != content.
• source control!• diff!• repeat, repeat, repeat
project handoff? --> so easy. time saved? --> beer.
WHENis it a good idea?
• always.
HOWwhat do the kids in the audience
need to try this at home?
gitdrush
features } do it
HOWPeople, it's demo time.
make filesdrush makeupdating featurestesting } do it
Example of a make file
do it
Specific options
do it
drush make filename.make
do it
drush generate-makefile file.make
do it
HOWMake the Robots do it....
do it
FEATURIZE IT
do it
adding a feature
do it
the list of features
do itfeature details - from here we can re-roll the feature
do it
recreating a feature - components closeup
AND THENsome crazy person comes along and
changes some settings.
do it
the list of features, now with an override.
do it
looking at the details of a feature with overrides
do it
diffing the overrides. a content type setting has been changed, and a block added to a context.
drush features-update my_sandwich
drush features-revert my_sandwich
do it
do it
AUTOMATED TESTING
CI JOE - http://github.com/defunkt/cijoe
do it
AUTOMATED TESTING
Post commit hooks to run simple tests
do it
AUTOMATED TESTING
HUDSON -> SELENIUM -> "INTELLIGENCE"
HUDSONhttp://hudson-ci.org/
SELINIUMhttp://seleniumhq.org/
SOME THINGS ARE NOT (YET) EXPORTABLE
do it
SOME THINGS ARE NOT (YET) EXPORTABLE
update_N as a workaround
• use .install file update hooks to adjust• features will preserve your custom code • don't cram in a million update_N tweaks
AUTOMATIONNow that we know it works....
HOWto ease your team into it
incrementalsmallsteps } start where
you are
ONWARDto Drupal 7!
what, are you scared? • all these tools work on D7 now• taxonomy is exportable• get Build Kit
Resources
Collaboration over Competitionhttp://affinitybridge.com
http://affinitybridge.com/category/topics/abridged
http://developmentseed.org/blog/2010/sep/30/features-and-exportables-drupal-7
http://developmentseed.org/blog/2010/sep/11/aegir-04-alpha-13-drush-make-support-allows-automatically-building-drupal-distribut
http://github.com/defunkt/cijoehttp://hudson-ci.org