Closed (fixed)
Project:
Hosting
Version:
6.x-0.2-beta1
Component:
Code
Priority:
Critical
Category:
Task
Assigned:
Unassigned
Issue tags:
Reporter:
Created:
9 Oct 2008 at 22:15 UTC
Updated:
2 Jan 2014 at 23:45 UTC
Jump to comment: Most recent, Most recent file
Comments
Comment #1
adrian commentedCoder report for upgrade.
Comment #2
anarcat commentedput in the right project.
Comment #3
adrian commentedI spent an hour or two playing with http://drupal.org/project/deadwood, to try and create a D6 port of Aegir. I was mostly successful, and attached is a patch that needs to be applied to HEAD hosting _BEFORE_ doing the conversion. Also note that you should not run the module_load_include conversion, as that doesn't work in our case.
At the present moment, we are not aiming to support D6 front ends with the 0.2 release, but a D6 port might help us in removing crufty code and other kludges.
Some of the items I have identified are :
1) it would allow us to remove the hosting.wizard.inc from hosting, and provide us with a much cleaner installation wizard. This wizard can also add extra items based on a hook. It would also solve the issue we have where we need to create a bunch of nodes first, and then edit them through the wizard, as the actual creation could be tied into the wizard steps themselves.
2) the viewing and hiding of menu items due to features is a lot cleaner thanks to hook_menu_alter.
3) the introduction of hook_enable / hook_disable allow us to more cleanly map things to enabling and disabling of features.
4) the *.feature.inc files could be removed and the information added to the .info files.
Our options are :
1) Deal with the cruft and keep the d5 front end for the 0.2 release. Port the front end to d6 for the 0.3 release.
2) Port the front end to d6 first, and once we have a stable(ish) 0.1 d6 front end, and extend it to 0.2 after that.
3) Do both the D6/0.2 upgrades simultaneously.
We do _not_ want to maintain multiple branches of hosting concurrently.
We are already doing very active development on both Drush and Provision for this release. Can we afford to break everything in hosting too ?
We need to have a full understanding of the 0.1 -> 0.2 upgrade process to know how adding a major version upgrade into the mix will affect the system.
We need to figure out what effect the Drush 2.x development timeline will have on our project timeline, as we can't release until we have a full release of Drush.
The version of Drupal we have has a direct effect on our contrib features. If we don't port to d6 now, we will have more mature code to port for a release later.
Comment #4
anarcat commentedI think the general consensus now is to release 0.2 with both 5.x and 6.x support, since more people have expressed availability to actually work on the port.
Here's my proposal. We'll focus on pushing out a 5.x version, but branch right on the official release. We will create a DRUPAL-5 branch once the DRUPAL-5--0-2 tag is laid down and HEAD will be come 6.x. DRUPAL-5 will become unsupported (except for possible security releases?). We can then release a 6.x-0.2-rc1 and quickly release a 6.x-0.2 if rc1 is working properly.
Comment #5
anarcat commentedNote how this relates to #319274: Integrate with new D6 installation wizard .
Comment #6
benkant commentedOkay, I've run deadwood off hosting HEAD (just before the 0.2 beta release).
I've cleaned up some syntax errors and other obvious problems deadwood couldn't help but introduce. There is still a fair bit to be done, but this is a start.
Once the beta is released I'll upload a new patch for 0.2 beta.
Comment #7
benkant commentedThis patch contains the work done above, updated to include 0.2 beta. Diff was run off the hosting DRUPAL-5--0-2-BETA1 codebase.
To aid anyone willing to help with the effort I will upload a new patch regularly. I'll be on IRC if you'd like me to roll a new patch. In the event I'm not there you can assume the newest patch in this issue represents my latest work.
Comment #8
anarcat commentedPlease set the issue status to reflect the code situation. Once you think it's ready, mark it needs review so we know we can test.
Comment #9
anarcat commentedSo now we have an RC out, there will be minimal changes in the release (although you should still patch against HEAD). In fact, we're thinking of releasing 0.2 on HEAD as is (we're waiting for drush again, basically). so please go forward with the port.
What's missing now? The wizard?
Comment #10
benkant commentedThe hosting wizard is missing. I was hoping Vertice could look at that?
Also some of the menu code is quite 5.x specific. I will attempt to have another look at it, but I have no doubt anacart or Vertice would be able to fix it much quicker than I could.
Comment #11
adrian commentedThe hosting wizard needs to be be moved to hostmaster.
Comment #12
benkant commentedHere's the next patch, updated to include current changes to HEAD as of... now.
Just a quick reminder if you use deadwood: turn off module_include and hook_update_N checks. Perhaps other checks are useless or introduce errors as well...
In addition to cleaning up deadwood's output I've added all the required hook_theme functions, fixed up the .info and .install files and have done my best to make all the hook_menu code at least run, if not correctly.
Some of the FormAPI and node module API code is still broken. We've decided against getting this perfect at the moment, as the hosting wizard in hostmaster will change much of the existing code there.
You will be able to enable the modules and play around- but you will still be getting errors/warnings. Work in progress.
Comment #13
adrian commentedHere's my version of the patch.
most things are working now, save the javascript on the site node form and the wizard.
I'm also going to add a patch for Eldir , and attachng the .info file that needs to be added.
Comment #14
adrian commentedMMM. it missed my instructions
Anyway. I tested this by cloning my main hosting site onto a d6 platform.
The hostmaster profile only needs to be updated for installs, so i made a copy of it, with the D6 versions of the hosting, admin_menu and eldir packages. You need to have the HEAD of drush, otherwise modules in profile directories are disabled during updatedb.
Then i did :
If you want to wipe it out and start again :
Once i have the upgraded site working , I will start working on the install profile.
I'm working on committing the d6 versions now.
Comment #15
adrian commentedI finished porting the menus, forms and install wizard.
the wizard is now in hostmaster.profile, which now has an additional dependency on install_profile_api (which might go away later).
I had to make 2 database changes, because db_next_id has been replaced by db_last_insert_id, which means that 2 of our int fields needed to change to serial.
Install profile still has a fair amount of stuff i need to do with it.
for instance it's ignoring block configuration etc.
You will need HEAD of Drush, Provision, Hosting, Hostmaster and Eldir to test this out.
Comment #16
anarcat commentedI update the UPGRADE.txt on HEAD:
http://drupal.org/cvs?commit=217662
See also #454312: self-provisionning support.
Comment #17
anarcat commentedI fixed the retry button form that wasn't ported.
Comment #18
anarcat commentedSo what I suggest to keep track of issues here is to resolve this issue (the frontend *is* mostly ported) and open specific issues on problems we stumble upon.
Comment #19
anarcat commentedtagging
Comment #20
anarcat commented