Steps:
1. Revert deploy_neutron_gre snapshot
2. Upgrade with rollback
3. Run OSTF
4. Run network verification
5. Upgrade fuel master
Actual result:
Upgrade failed:
2015-07-31 05:37:40 DEBUG 6464 (utils) Copying "/var/upgrade/repos/2015.1.0-7.0" -> "/var/www/nailgun/2015.1.0-7.0" [overwrite=1 symlinks=1]
2015-07-31 05:37:48 DEBUG 6464 (utils) Render template from /var/upgrade/.fuel-upgrade-venv/lib/python2.6/site-packages/fuel_upgrade/templates/nailgun.repo to /etc/yum.repos.d/7.0_nailgun.repo with params: {'gpgcheck': 0, 'skip_if_unavailable': 0, 'name': '7.0_nailgun', 'baseurl': 'file:/var/www/nailgun/2015.1.0-7.0/centos/x86_64'}
2015-07-31 05:37:48 DEBUG 6464 (utils) Execute command "yum clean all"
2015-07-31 05:37:48 DEBUG 6464 (utils) Stdout and stderr of command "yum clean all":
2015-07-31 05:37:48 DEBUG 6464 (utils) Loaded plugins: fastestmirror, priorities
2015-07-31 05:37:48 DEBUG 6464 (utils) Cleaning repos: 7.0_nailgun auxiliary mos6.1-security mos6.1-updates nailgun
2015-07-31 05:37:48 DEBUG 6464 (utils) Cleaning up Everything
2015-07-31 05:37:48 DEBUG 6464 (utils) Cleaning up list of fastest mirrors
2015-07-31 05:37:48 DEBUG 6464 (utils) Command "yum clean all" successfully executed
2015-07-31 05:37:48 DEBUG 6464 (utils) Execute command "yum install -v -y fuel-7.0.0"
2015-07-31 05:37:48 DEBUG 6464 (utils) Stdout and stderr of command "yum install -v -y fuel-7.0.0":
2015-07-31 05:37:49 DEBUG 6464 (utils) Loading "fastestmirror" plugin
2015-07-31 05:37:49 DEBUG 6464 (utils) Loading "priorities" plugin
2015-07-31 05:37:49 DEBUG 6464 (utils) Not loading "product-id" plugin, as it is disabled
2015-07-31 05:37:49 DEBUG 6464 (utils) Not loading "subscription-manager" plugin, as it is disabled
2015-07-31 05:37:49 DEBUG 6464 (utils) Config time: 0.006
2015-07-31 05:37:49 DEBUG 6464 (utils) Yum Version: 3.2.29
2015-07-31 05:37:49 DEBUG 6464 (utils) Setting up Package Sacks
2015-07-31 05:37:49 DEBUG 6464 (utils) Determining fastest mirrors
2015-07-31 05:37:49 DEBUG 6464 (utils) file:///var/www/nailgun/2015.1.0-7.0/centos/auxiliary/repodata/repomd.xml: [Errno 14] Could not open/read file:///var/www/nailgun/2015.1.0-7.0/centos/auxiliary/repodata/repomd.xml
2015-07-31 05:37:49 DEBUG 6464 (utils) Trying other mirror.
2015-07-31 05:37:49 DEBUG 6464 (utils) Error: Cannot retrieve repository metadata (repomd.xml) for repository: auxiliary. Please verify its path and try again
2015-07-31 05:37:49 ERROR 6464 (upgrade) HostSystemUpgrader: failed to upgrade: "Shell command executed with "1" exit code: yum install -v -y fuel-7.0.0 "
Traceback (most recent call last):
File "/var/upgrade/.fuel-upgrade-venv/lib/python2.6/site-packages/fuel_upgrade/upgrade.py", line 82, in run
upgrader.upgrade()
File "/var/upgrade/.fuel-upgrade-venv/lib/python2.6/site-packages/fuel_upgrade/engines/host_system.py", line 97, in upgrade
self.install_packages()
File "/var/upgrade/.fuel-upgrade-venv/lib/python2.6/site-packages/fuel_upgrade/engines/host_system.py", line 143, in install_packages
utils.exec_cmd('yum install -v -y {0}'.format(package))
File "/var/upgrade/.fuel-upgrade-venv/lib/python2.6/site-packages/fuel_upgrade/utils.py", line 61, in exec_cmd
_wait_and_check_exit_code(cmd, child)
File "/var/upgrade/.fuel-upgrade-venv/lib/python2.6/site-packages/fuel_upgrade/utils.py", line 112, in _wait_and_check_exit_code
'exit code: {1} '.format(exit_code, cmd))
ExecutedErrorNonZeroExitCode: Shell command executed with "1" exit code: yum install -v -y fuel-7.0.0
2015-07-31 05:37:49 ERROR 6464 (upgrade) *** UPGRADE FAILED
Env:
6.1-525 -> 7.0-113
Well, the problem is the following:
* In 6.1 we have the /etc/yum. repos.d/ auxiliary. repo points to file:// /var/www/ nailgun/ 2014.2. 2-6.1/centos/ auxiliary/ repos.d/ auxiliary. repo to points it to file:// /var/www/ nailgun/ 2015.1. 0-7.0/centos/ auxiliary/ /var/www/ nailgun/ 2015.1. 0-7.0/centos/ auxiliary/ repo (it was removed during rollback procedure).
* When we perform a master node upgrade from 6.1 to 7.0, the puppet manifest replaces the /etc/yum.
* In case of upgrade fail the rollback procedure is initiated.
* When we start upgrade procedure once again, it fails because yum is unable to fetch file://
I don't know how to fix it's better. I see two way to fix it:
1/ Move auxiliry repo management to fuel_upgrade. That means, we shouldn't create auxiliary.repo file in puppet manifests, and should create/remove this file in fuel_upgrade script.
2/ Create a 7.0_auxiliary.repo in puppet manifests, and add hack to remove this file in fuel_upgrade script (similar to this one https:/ /github. com/stackforge/ fuel-web/ blob/master/ fuel_upgrade_ system/ fuel_upgrade/ fuel_upgrade/ engines/ host_system. py#L158- L163 )
I think anyway, in case of upgrading we should create not "auxiliary.repo", but "7.0_auxiliar. repo", just like we do for the "nailgun.repo".