Skip to end of metadata
Go to start of metadata

Development Workflow

Workflow for Development Phase

(As of 6/7 we are using this workflow)

In this phase it doesn't matter if we destoy content in any of the environments (dev, test, live).


  1. Developers import the most recent database from the LIVE site to their local stack
  2. Developers code and configure on their local stacks
    • Developers keep track of their configuration steps (manual list, or by putting configuration in code)
    • See CCK and Views in code.
  3. Developers 'git push' to DEV environment
  4. Developers use Pantheon control panel to push CODE: dev->test->live
  5. Developers perform configuration of modules on LIVE environment
    • Important: Developers must notify eachother whenever new configuration has been performed on live.
      • Scenario:
        Developer A configures modules 1 and 2 on LIVE and notfies Developer B.
        Developer B is in the middle of configuring modules 3 and 4 on her local stack. She proceeds as follows:
        * finish local stack configuration
        * (as described above) git push, then Pantheon control panel: push code dev->test->live
        * perform configuration of modules 3,4 on LIVE and notify Developer A
        * import db from live to her local stack
  6. Users (Rich, Yu-Tin, committee) test on
  7. Optionally, as needed, developers use Pantheon control panel buttons:
    • "Update Dev Content" (sync db live -> dev)
    • "Refresh Test site" (sync db live -> test, ensure code in test matches dev)

CCK and Views in code

As a step towards and everything-in-code approach, all content types and views have been exported to files in sites/all/modules/tsr/cck and sites/all/modules/tsr/views. Anytime we update these elements, we should overwrite their corresponding file and commit changes to version control.

Workflow for Data Entry (and User Testing) Phase

(As of 6/20/11 we ar using this workflow)

User Testing happens in
Data Entry happens in


Use the above workflow with the following changes:

  1. Developers import the most recent database from the LIVE site to their local stack
  2. Developers code and configure on their local stacks
  3. Developers 'git push' to DEV environment
    • Developers only configure on DEV if the functionality needs to be working there. (Otherwise the config will flow down with the db after it's been performed on live.)
  4. Using Jira (see: #Use Jira to indicate migration statuses):
    1. Developers: Workflow > Implemented on DEV
    2. Rich: Workflow > Request Migration to TEST
    3. Developers: push to TEST and configure
    4. Developers: Workflow > Implemented on TEST
    5. Rich: Workflow > Request Migration to LIVE
    6. Developers: push to LIVE and configure
    7. Developers: Workflow > Implemented
    8. Rich: Close ticket

Use Jira to indicate migration statuses

  • A Ticket is assigned to developer
  • Developer does the work and clicks Ready to Verify
    • Now Request Migration to Dev and Migrate to Dev are available
  • Developer probably does a 'git push', performs config on DEV and clicks Migrate to Dev
    • Now Request Migration to QA and Migrate to QA (aka TEST) are available
  • Rich clicks Request Migration to QA (aka TEST) when he is ready
  • Developer uses Pantheon control panel to push code to QA. Performs config on QA. Clicks Migrate to QA
    • Now Verify Resolution (optional) and Migrate to production (aka TEST) are available
  • Rich clicks Request Migration to production when he is ready
  • Developer uses Pantheon control panel to push code to LIVE. Performs config on LIVE. Responds with comment that fix is in live.
  • Rich clicks Close Ticket


Importing a rule fails

You try to import sites/all/modules/tsr/rules/notify_product_support_team.php at http://tsr-pn.localhost:8082/admin/rules/ie and you get Import Failed.

I don't know why, but if you go to a site where the rule is working and export it, then copy from that site's export window to the import window of the new site, it works. The import appears to be identical to what I committed (sites/all/modules/tsr/rules/notify_product_support_team.php).

Solr facet block show TIDs where it should show Category names:

  • delete the index
  • run cron on the site
  • After 2 min you should have the term names in that facet block.

This happened after deleting a replace all of the category terms.

Pantheon Issues

When migrating site, may need to reassign blocks (if they get set to "none").

Assign to right sidebar:

  • Apache Solr Search: Filter by taxonomy Products
  • Apache Solr Search: Filter by taxonomy Product Tags
  • Apache Solr Core: Sorting

Assign to content bottom:

  • Product
  • Community tagging form
  • Apache Solr recommendations: More like this

When upgrading ckeditor module, need to copy the following edited files from the previous version (custom ckeditor settings/theming):

  • ckeditor.config.js
  • ckeditor.styles.js
  • content.css

Tech Commons Theme config

  • Set Content Selector to #content-area
  • Path to custom logo: none (blank)
  • Uncheck "logo" and "mission"
  • Make sure “add title effect” is checked (should be set by default)

Block Title Overrides

  • Taxonomy vocabulary: Filter by taxonomy Products block (right sidebar): "Filter by Categories"
  • Taxonomy vocabulary: Filter by taxonomy Products Tags block (right sidebar): "Filter by Tags"
  • Product (content bottom): <none>
  • Community tagging form (content bottom): <none>
  • Footer (footer): <none>

Free Tags dissappeared from Product cck

5/25/11 approximately

Problem was that Product was no longer selected at /admin/content/taxonomy/edit/vocabulary/3

Also see: README.txt in the module for setup.

CKeditor settings

Two profiles: Authenticated (formerly Advanced) and Administrator (formerly Advanced_2)

Currently admins have the "webmaster" toolbar and authenticated users have the "editor" toolbar.

Added config (will need to clear browser cache and log in as auth-tester):

  • In ckeditor.config.js, add ‘Styles' to config.toolbar_Editor
  • In ckeditor.styles.js, added heading styles, commented out rest

CCK and Input formats

[CCK Type] > Manage Fields > [Field] > Default Value > Input format: Authenticated

Current allowed tags for Authenticated Input format:

<a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <sup> <blockquote>
<p> <br> <h1> <h2> <h3> <h4> <h5> <img> <span> <table> <tbody> <tr> <th> <td> <caption>

We can add another input format (e.g., Webmaster) down the line if we (admins) want to be able to manually add tags like <div> <input>. I usually limit that (and the ability to View Source from CKeditor) only to webmasters and admins. If I find a need, I'll create a Webmaster input format accordingly.

Better Formats provides role association:

If input format is missing after changing CCK field, you need to switch “Text Processing” from “Plain text” to “Filtered text (user selects input format)” for each CCK field where you want to use the input format.

Home Page and Primary Menu Config

[UCTSR-6 and UCTSR-7]

  • Removed five star rating from Page content type
  • Enabled Panels and CTools: Page Manager and Views Content Panes (part of IST Drupal build)
  • Enabled Statistics (under Core Optional)
  • Imported two views: most_viewed and recent_items
  • Added and enabled Quicktabs: created an "Information" tab with three views: Recent Items, Recent Updates, Most Viewed
  • Added and enabled Custom Search (and custom search blocks and taxonomy) -- configured to allow selection by content type and taxonomy); set permissions to allow auth user to use custom search
  • Set front page to "front" instead of "node"

If fivestar and voteupdown are not visible after you load the qa db to your dev environment:

Clearing Drupal's cache might do it for you

 drush -r ~/Sites/drupal-6.20_ucb_20110411_00 -l tsr-dev.localhost cc all

Brian needs to resort to disable/enable.

 drush -r ~/Sites/drupal-6.20_ucb_20110411_00 -l tsr-dev.localhost dis fivestar vud vud_comment -y
 drush -r ~/Sites/drupal-6.20_ucb_20110411_00 -l tsr-dev.localhost en fivestar vud vud_comment -y

Apachesolr undefined index on update.php

WD php: Notice: Undefined index:  field_type in                      [error]
apachesolr_search_apachesolr_facets() (line 755 of

To fix apply this patch
This applies to

  • No labels