6082 comments
2357 subscribers
6221 on Twitter
Subscribe! Feed reader E-mail

Drupal Features and Drush: updating our development workflow

I’m working with two other people on a Drupal project, so we’re coordinating our work through a Subversion source code repository. A lot has changed in Drupal since the days when I dived into the source code to figure out the code I needed in order to duplicate the configuration changes I made through the web interface (Drupal staging and deployment: it’s all code). Now, the Features module can export various configuration bits as a module that you can check into your source tree and enable on your site. It will even show you which settings you’ve overridden through the web interface, so you can regenerate the code and make sure everything’s included.

Drush (the Drupal shell) has some commands that make Drupal features even easier to use. For example, I use drush features-diff <feature_name> to see which settings I’ve changed, and drush features-update to re-export the settings to source code.

Because we’ll be using Features to share our changes instead of working off SQL backups, I need to make sure that I’ve included all the relevant components in the features I create. One way to test that is to use Backup and Migrate to save my configured database (just in case!), load a previous backup, enable the feature, and confirm that everything works as expected.

Tests using either SimpleTest or Selenium would be the best way to confirm everything is working, of course. When Stuart comes back on Monday, he can help us set up an environment using hudson as a continuous integration server. Stuart has set up Selenium tests before, and it might be possible to use simpletest with hudson also.

Short URL: http://sachachua.com/blog/p/21831
  • http://treehouseagency.com/ Steven Merrill

    It is definitely possible to use Hudson with SimpleTest. Pressflow 6 has a slightly updated version of Steven Jones’s run-tests.sh script that can output XML. (See http://bazaar.launchpad.net/~pressflow/pressflow/6/revision/59 .)

    We’re trying to get it into Drupal 7 core, as well: http://drupal.org/node/602332 .

  • http://www.coderintherye.com Kevin

    You may also want to consider luntbuild or quickbuild in addition to Hudson. We use it for our continuous integration in conjunction with Drush, Phing, and SVN. Quickbuild is a proprietary version of luntbuild which is available free to open source projects. We love it.

On This Day...

  • 2012: Pub nights and thinking about networking at events — One of the lessons we took home from the Quantified Self Conference in September was the importance of a pub [...]
  • 2012: Planning how to learn about validating business ideas — I’ve been taking notes at business events and sharing them on my blog. People tell me that they really like [...]
  • 2011: Weekly review: Week ending October 21, 2011 — Back to work! Transition was smooth, thanks to some weekend time spent catching up with mail and getting things ready [...]
  • 2009: Vacations and the introvert — What’s your ideal vacation? Many people would probably describe an idyllic retreat on a pristine beach. Others dream of action-packed [...]
  • 2008: Catching my breath — I just came back from a trip to Boston that was jam-packed with interesting conversations and connections. The cookies were [...]
  • 2007: Why Emacs — Now that I’ve joined the wonderful world of the office workplace, I find myself missing my Emacs-based life. I miss using Emacs [...]
  • 2007: Practice evangelist — I joined Aaron Kim and Bernie Michalik’s team in IBM last week, and I *love* what I’m doing. It’s such a [...]
  • 2006: Emacs presentation was a blast! — Had too much material (of course), but had tons of fun anyway. =) Blew people’s minds. Yay! On Technorati: democamp
  • 2006: Hello world — This is a blog entry On Technorati: democamp Random Emacs symbol: eshell-script-load-hook – Variable: *A list of functions to call when loading [...]
  • 2006: PBJ 1.0 — Kudos to the presenter for structuring the presentation for quick and early audience participation, and for taking on the challenge [...]
  • 2006: Demo Camp: Broken Tomb: The world’s first commercial Smalltalk host — Look! It’s the Demo Camp of the Living Dead Languages! =D Smalltalk is a fun language. I ran into it when [...]
  • 2006: Demo Camp: Quotiki — Quotiki has live search for quotes, which would be good if it was more responsive. For example, the search “caesar” just [...]
  • 2006: Demo camp: Online grading and code review — The online grading and code review system demonstrated by Greg Wilson‘s students from the University of Toronto is really cool, [...]
  • 2006: Excited about my DemoCamp presentation! — I’ve written a totally small-time presentation thingy that cues me thanks to Emacspeak. ;) Here’s the setup code: (progn ;; Setup [...]
  • 2005: Argh, keycaps — A book fell off my shelf and knocked off the keycap for 4. It also dislodged the keycap for T (Y [...]
  • 2004: Debian BOF — Slideshow of people from the Debian project. Debianメンテナへの道 http://www.netfort.gr.jp/~ohura/ ~40 Japanese DDs - Philosophy and procedure - Tasks and skills 公開鍵 – public key
  • 2004: Translation BOF — Lots of people use Emacs. Way cool. Edict’s apparently the best way to look up things. I had hoped that a [...]
  • 2004: OO.o demonstration — catch. Community Manager Louis Suarez-Potts Changes: Misc toolbar moved to the bottom. Toolbars now draggable and dockable, like MS Office. Tweaks to the toolbar [...]
  • 2003: /dev/ide/host0/bus0/target0/lun0/disc does not have any corresponding BIOS drive. — Got this error when installing grub. grub-install --recheck /dev/hda fixed it. Switch to 2.6 kernel and all…
  • 2003: Emacs annoyance — I’ve tracked it down – make-variable-buffer-local needs to be done..
  • 2003: Bah. mozilla-psm is segfaulting on me today. — Downgraded to testing and held.
  • 2003: Emacs weirdness — For some reason, local-write-file-hooks had the BBDB stuff in it, so cookies were getting added to my data… Hmm. Test script. (let ((old-hook [...]
  • 2003: Internet and E-Mail on a dialup using linux — http://www.hserus.net/exim.html
  • 2003: Paranoid mail servers — Our school mail server is particularly paranoid. Whenever I am on campus, I have to use it as my smarthost, but [...]

Get the highlights as a PDF!

Stories from my Twenties: Highlights from a Decade of Blogging