Deprecate XenServer 6.5 on MOS10

We will depracate support of XenServer 6.5 since MOS10, this patch
is to implement this via:
(1) Add XCP version check in compute_pre_test.py to make sure
the minimal XCP version is 2.1.0
(2) Replace the guest tool to xe-guest-utilities_7.0.0-24_all.deb
(3) Update related documents to only support XS7.0 and XS7.1

Change-Id: I0a0420d158faf18de3534f501dd2a25d818cc9be
This commit is contained in:
Huan Xie 2017-04-11 00:46:54 -07:00
parent e50e18ab2a
commit 9a2beb2950
9 changed files with 24 additions and 21 deletions

View File

@ -8,7 +8,7 @@ Requirements
Requirement Version/Comment
========================= ============================
Fuel 9.0
XenServer 6.5+XS65ESP013, 7.0 and 7.1
XenServer 7.0 and 7.1
XenServer plugin for Fuel @PLUGIN_VERSION@
========================= ============================

View File

@ -15,7 +15,7 @@ can also be downloaded directly from `citrix.com
Citrix account.
Documentation for XenServer can be found on `docs.vmd.citrix.com
<http://docs.vmd.citrix.com/XenServer/6.5.0/1.0/en_gb/>`_ and for how
<http://docs.citrix.com/en-us/xenserver/xenserver-7-0.html>`_ and for how
XenServer works within OpenStack at docs.openstack.org in the
`OpenStack Configuration Reference
<http://docs.openstack.org/juno/config-reference/content/introduction-to-xen.html>`_

View File

@ -67,8 +67,8 @@ https://docs.mirantis.com/openstack/fuel/fuel-9.0/mos-planning-guide.html
Product compatibility matrix
----------------------------
The plugin is compatible with MOS 9.0 and XenServer versions 6.5 SP1
(with hotfix XS65ESP013), 7.0 and 7.1, with all hotfixes applied.
The plugin is compatible with MOS 9.0 and XenServer versions 7.0
and 7.1, with all hotfixes applied.
Prerequirements

View File

@ -438,12 +438,7 @@ def check_and_setup_ceilometer(himn, username, password):
restart_services('ceilometer-polling')
def enable_conntrack_service(himn, username, xcp_version):
if LooseVersion(xcp_version) < LooseVersion('2.1.0'):
# Only support conntrack-tools since XS7.0(XCP2.1.0) and above
LOG.info('No need to enable conntrack-tools with XCP %s' % xcp_version)
return
def enable_conntrack_service(himn, username):
# use conntrack statistic mode, so change conntrackd.conf
if not os.path.exists('/etc/conntrackd/conntrackd.conf.back'):
utils.ssh(himn, username,
@ -463,14 +458,6 @@ def enable_conntrack_service(himn, username, xcp_version):
utils.ssh(himn, username, 'service', 'conntrackd', 'restart')
def get_xcp_version(himn, username):
xcp_ver = utils.ssh(himn, username,
('xe host-param-get uuid=$(xe host-list --minimal) '
'param-name=software-version '
'param-key=platform_version'))
return xcp_ver
if __name__ == '__main__':
install_xenapi_sdk()
astute = utils.get_astute()
@ -487,7 +474,7 @@ if __name__ == '__main__':
if username and password and endpoints and himn_local:
route_to_compute(endpoints, HIMN_IP, himn_local, username)
xcp_version = get_xcp_version(HIMN_IP, username)
xcp_version = utils.get_xcp_version(HIMN_IP, username)
if install_xapi:
install_suppack(HIMN_IP, username, XS_PLUGIN_ISO, xcp_version)
enable_linux_bridge(HIMN_IP, username)
@ -504,7 +491,7 @@ if __name__ == '__main__':
install_logrotate_script(HIMN_IP, username)
# enable conntrackd service in Dom0
enable_conntrack_service(HIMN_IP, username, xcp_version)
enable_conntrack_service(HIMN_IP, username)
# neutron-l2-agent in compute node
modify_neutron_rootwrap_conf(HIMN_IP, username, password)

View File

@ -1,5 +1,6 @@
#!/usr/bin/env python
from distutils.version import LooseVersion
import json
import os
import stat
@ -8,6 +9,7 @@ from utils import HIMN_IP
XS_RSA = '/root/.ssh/xs_rsa'
VERSION_HOTFIXES = '@VERSION_HOTFIXES@'
MIN_XCP_VERSION = '2.1.0'
utils.setup_logging('compute_pre_test.log')
LOG = utils.LOG
@ -38,6 +40,12 @@ def ssh_copy_id(host, username, password):
def check_host_compatibility(himn, username):
xcp_version = utils.get_xcp_version(himn, username)
if LooseVersion(xcp_version) < LooseVersion(MIN_XCP_VERSION):
utils.reportError('Platform version %s should equal or greater than %s'
% (xcp_version, MIN_XCP_VERSION))
return
version_hotfixes = json.loads(VERSION_HOTFIXES)
ver = utils.ssh(himn, username,

View File

@ -302,3 +302,11 @@ def add_cron_job(user, job_entry):
execute(crontab_cmd, '-u', user, temp_path)
os.close(temp_fd)
os.remove(temp_path)
def get_xcp_version(himn, username):
xcp_ver = ssh(himn, username,
('xe host-param-get uuid=$(xe host-list --minimal) '
'param-name=software-version '
'param-key=platform_version'))
return xcp_ver

View File

@ -5,7 +5,7 @@
requires: ['network_configuration_end']
type: shell
parameters:
cmd: 'dpkg -i ./xe-guest-utilities_6.5.0-1393_amd64.deb'
cmd: 'dpkg -i ./xe-guest-utilities_7.0.0-24_all.deb'
timeout: 60
- id: 'compute-pre-test'
version: 2.0.0