We're voting/discussing on better ways to upgrade ACS from 3.0.x to 4.0. Yes, there is one commit by Edison and one by David. Both have them have different ways to upgrade.
+1 to Edison's commit as it is backward compatible at the cost of user to reinstall a package. -1 to David's commit as it will break compatibility, we'll have to fix hardcoded paths in code, in conf files during upgrades, in doc and QA would be required to regress/test again. +1 to do this for 4.1 maybe. May be it should get its own thread. Regards. ________________________________________ From: Noah Slater [nsla...@tumbolia.org] Sent: Saturday, October 06, 2012 2:38 AM To: cloudstack-dev@incubator.apache.org Subject: Re: [VOTE] how to upgrade CloudStack from 3.0.x to 4.0 This VOTE thread seems a little bit ill conceived. For something like this, consensus building through discussion might've been a better approach. As it stands, we seem to have generated about three or more separate things people are now voting on within the same thread. (Which seems to indicate that the is a conversation that needs to be had before we do anything.) This bit confuses me: The other option is to revert the change but I think it's too big of a > change now this late into the release. Are we, or were we, voting on something that has already been committed? In which case, is this a formal VOTE on what would be lazy consensus (if we're using the commit then review model) or a process error (if we're using the review then commit model). On Fri, Oct 5, 2012 at 9:58 PM, Rohit Yadav <rohit.ya...@citrix.com> wrote: > For the fix: > https://git-wip-us.apache.org/repos/asf?p=incubator-cloudstack.git;a=commitdiff;h=f3a9a835d32ceeecaefac70fb9b77272e914f18c > I don't have any opinion about backward compatibility; but if we don't > want it, is there any point in handling upgrade use cases? > > Also, use same logic for Debs also? > > With present fix, we can do following to make sure it won't affect any > functionality; > > 1. grep and replace all hardcoded links to /usr/<libpath>/cloud/agent to > <...>/cloud/common throughout the codebase > 2. fix paths in all confs, same as 1. > 3. fix such paths in conf files during upgrades (this will be tricky to > automate) > > Open for discussion, suggestions or, +1, -1, 0 to above? > > ________________________________________ > From: Wido den Hollander [w...@widodh.nl] > Sent: Saturday, October 06, 2012 12:47 AM > To: cloudstack-dev@incubator.apache.org > Subject: Re: [VOTE] how to upgrade CloudStack from 3.0.x to 4.0 > > On 10/05/2012 07:58 PM, Edison Su wrote: > > Refer to bug CLOUDSTACK-248, the root cause is : > > we change cloud-agent-scripts to cloud-scripts, and change the > installation path from /usr/lib64/cloud/agent to /usr/lib64/cloud/common. > > But in the source code, there are some other places still use > /usr/lib64/cloud/agent. For backward compatibility, we link > /usr/lib64/cloud/common to /usr/lib64/cloud/agent during the cloud-scripts > installation. > > It works for a fresh 4.0 installation, but doesn't work for upgrade: > > During the upgrade, cloud-scripts will be installed first, then link > from /usr/lib64/cloud/common to /usr/lib64/cloud/agent will be created. > Then cloud-agent-scripts will be uninstalled automatically, thus > /usr/lib64/cloud/agent will be removed. When mgt server starts, it > complains can't find scripts under /usr/lib64/cloud/agent. > > > > Rohit fixes this issue by manually force upgrade cloud-scripts after the > upgrade process, which will install /usr/lib64/cloud/common and create the > link between /usr/lib64/cloud/common and /usr/lib64/cloud/agent. > > > > Actually we can put this extra installation process into ./install.sh, > so it will become transparent for end users. > > Will it be reasonable/acceptable for the community? > > > > Not everybody will use install.sh, people can also download the RPMs or > DEBs manually or use a DEB/RPM repo. > > This should be fixed in the packaging itself. > > It's something I wanted to fix today, but didn't get to it. > > The problem lies in the management server, since I tested running the > agent without the /usr/lib/cloud/agent directory and that runs just fine > as long as "path.scripts" is pointing to the right path. > > So it's the management server which should be fixed and the whole > symlink should be removed. > > Anything that is still searching in a hardcoded path should be fixed > instead of banded. > > We are already seeing that the symlinking is doing, I don't want this to > be haunting us for the next couple of releases. > > Regarding the change of the LibvirtComputingResource in > agent.properties, this can be fixed in the postinst of the RPM and DEB > packages by simply running a search and replace with sed on that > particular file? > > I'm not really in favour of that however, since you are doing a major > version upgrade as an admin you should take care of your configuration. > Things have changed, we should just have a BIG warning in the upgrade > documentation. > > Wido > -- NS