summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorBob Ball <bob.ball@citrix.com>2013-09-17 15:29:30 +0100
committerGerrit Code Review <review@openstack.org>2013-10-03 13:08:56 +0000
commit24fd331b8cd5aca66362e6f76deec9c437875933 (patch)
tree12b7232c3e334e57d727d50a28c6b624180707d0 /plugins
parent026edcd6865d0683d13b96c441dc90e1f897df55 (diff)
downloadnova-24fd331b8cd5aca66362e6f76deec9c437875933.tar.gz
XenAPI: Add versioning for plugins
Because the plugins live on a host seperate to Nova we need an interface to test whether they are the expected version. We can't use pip or other requirement systems as they are cross-machine. Closes bug 1226622 Change-Id: I58ab669061f51bd87071e2cf0d93d33021001309
Diffstat (limited to 'plugins')
-rw-r--r--plugins/xenserver/xenapi/contrib/rpmbuild/SPECS/openstack-xen-plugins.spec1
-rwxr-xr-xplugins/xenserver/xenapi/etc/xapi.d/plugins/nova_plugin_version33
2 files changed, 34 insertions, 0 deletions
diff --git a/plugins/xenserver/xenapi/contrib/rpmbuild/SPECS/openstack-xen-plugins.spec b/plugins/xenserver/xenapi/contrib/rpmbuild/SPECS/openstack-xen-plugins.spec
index 84578cf540..10b3b127e2 100644
--- a/plugins/xenserver/xenapi/contrib/rpmbuild/SPECS/openstack-xen-plugins.spec
+++ b/plugins/xenserver/xenapi/contrib/rpmbuild/SPECS/openstack-xen-plugins.spec
@@ -42,3 +42,4 @@ rm -rf $RPM_BUILD_ROOT
/etc/xapi.d/plugins/xenhost
/etc/xapi.d/plugins/xenstore.py
/etc/xapi.d/plugins/utils.py
+/etc/xapi.d/plugins/nova_plugin_version
diff --git a/plugins/xenserver/xenapi/etc/xapi.d/plugins/nova_plugin_version b/plugins/xenserver/xenapi/etc/xapi.d/plugins/nova_plugin_version
new file mode 100755
index 0000000000..6c7a4b774b
--- /dev/null
+++ b/plugins/xenserver/xenapi/etc/xapi.d/plugins/nova_plugin_version
@@ -0,0 +1,33 @@
+#!/usr/bin/env python
+
+# Copyright (c) 2013 OpenStack Foundation
+# Copyright (c) 2013 Citrix Systems, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+"""Returns the version of the nova plugins"""
+
+import utils
+
+# MAJOR VERSION: Incompatible changes
+# MINOR VERSION: Compatible changes, new plugins, etc
+
+# 1.0 - Initial version.
+PLUGIN_VERSION = "1.0"
+
+def get_version(session):
+ return PLUGIN_VERSION
+
+
+if __name__ == '__main__':
+ utils.register_plugin_calls(get_version)