As recently posted, the San Diego Drupal user group recently put together a sprint to get COD upgraded to Drupal 7. Here is an account of what went on and what we accomplished.
We started out with a few basic overarching steps.
1. Install D6 COD
2. Install a separate instance of D7 core
3. Grab a feature and start recreating it in D7
4. Once recreated, export it as a feature of the same name into a git checkout of cod_support, overwriting the feature of the same name
5. Find the appropriate upgrade issue in the cod_support issue queue
6. Post a patch to this issue
Because COD is a distribution primarily made up of features housed within the COD Support project, they mostly have to be re-created manually in Drupal 7. There's not really a reliable way to just upgrade the code since so much has changed in core and in the contrib modules that are it's dependencies. So the manual approach is being taken.
The first step was to make sure everyone could get setup with the most recent Drupal 6 version of COD. This was a technical challenge for many when trying to use the recommended way of using Drush and the Drush Make file provided by the COD distribution. But we came up with some steps that proved to be very helpful, at least to those not on Windows. These steps were added to the handbook page for COD.
In tandem, we created an issue for each component of COD Support within the COD Support issue queue and tagged them 'codesprint'. This gave us an easy way to keep track of each component's upgrade progress. We accomplished creating initial patches for 3 of the components: cod_base, cod_news, and cod_community. As well, there was some good discussions on how to deal with many of the other features, though much of this was in IRC and not recorded well in the issue queues.
There was also some lower level work on COD's Make file, which consisted of removing the patches not relevant to the Drupal 7 versions of the dependent modules, and a decent status list of the state of many of the dependencies.
Also of note is that we recorded much of this work throughout the day utilizing a Lullapad which gave us real-time collaboration on documenting everything as we went. This information was then translated into the various wiki pages (mainly http://groups.drupal.org/node/133524) that we have going on the COD group.
As well as having a great physical turnout in San Diego (roughly 15 people throughout the day) many people showed up in IRC (#drupal-cod on freenode) to help out. The wonderful people at GVS were mainly working on some of their itches which still persist in the Drupal 6 issue queue, and guiding the rest of us when we had questions while rebuilding these features.
In reflection, many of the people spent a lot of time just trying to get setup using Drush and Drush Make, and seeing as how there were many people having problems with this, it may be way simpler for the next sprint to simply get the distribution from the COD website itself, where it is already packaged for Drupal 6. With this and a separate clean Drupal 7 install, a lot of time could probably be saved on setup in order to get to the actual conversion process.
Comments
Chris Charlton (not verified)
May 18, 2011 - 09:19
Permalink
By the volunteers sharing the
By volunteers sharing process & Git details, I feel that encourages us who did not attend to join in and help from home.
Adam (not verified)
July 3, 2011 - 18:27
Permalink
The instructions seem simple
The instructions seem simple enough - thank you so much for taking the time to put this up - Adam
Add new comment