aboutsummaryrefslogtreecommitdiffstats
path: root/tools/xm-test/lib/XmTestLib/acm.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/xm-test/lib/XmTestLib/acm.py')
-rw-r--r--tools/xm-test/lib/XmTestLib/acm.py101
1 files changed, 0 insertions, 101 deletions
diff --git a/tools/xm-test/lib/XmTestLib/acm.py b/tools/xm-test/lib/XmTestLib/acm.py
deleted file mode 100644
index f8a62f4991..0000000000
--- a/tools/xm-test/lib/XmTestLib/acm.py
+++ /dev/null
@@ -1,101 +0,0 @@
-#!/usr/bin/python
-"""
- Copyright (C) International Business Machines Corp., 2006
- Author: Stefan Berger <stefanb@us.ibm.com>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; under version 2 of the License.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-"""
-from Test import *
-import xen.util.xsm.xsm as security
-from xen.xm.main import server
-from xen.util import xsconstants
-import re
-
-try:
- from acm_config import *
-except:
- ACM_LABEL_RESOURCES = False
-
-labeled_resources = {}
-acm_verbose = False
-policy='xm-test'
-
-
-def isACMEnabled():
- return security.on()
-
-def setCurrentPolicy(plcy):
- global policy
- policy = plcy
-
-def ACMSetPolicy():
- cmd='xm dumppolicy | grep -E "^POLICY REFERENCE = ' + policy + '.$"'
- s, o = traceCommand(cmd)
- if o != "":
- return
- s, o = traceCommand("xm setpolicy ACM %s" % (policy))
- if s != 0:
- FAIL("Could not load the required policy '%s'.\n"
- "Start the system without any policy.\n%s" % \
- (policy, o))
-
-def ACMPrepareSystem(resources):
- if isACMEnabled():
- ACMSetPolicy()
- ACMLabelResources(resources)
-
-def ACMLabelResources(resources):
- for k, v in resources.items():
- if k == "disk":
- for vv in v:
- res = vv.split(',')[0]
- ACMLabelResource(res)
-
-# Applications may label resources explicitly by calling this function
-def ACMLabelResource(resource, label='red'):
- if not isACMEnabled():
- return
- if acm_verbose:
- print "labeling resource %s with label %s" % (resource, label)
- if not ACM_LABEL_RESOURCES:
- SKIP("Skipping test since not allowed to label resources in "
- "test suite")
- if not isACMResourceLabeled(resource):
- ACMUnlabelResource(resource)
- s, o = traceCommand("xm addlabel %s res %s" % (label, resource))
- if s != 0:
- FAIL("Could not add label to resource")
- else:
- labeled_resources["%s" % resource] = 1
-
-
-# Application may remove a label from a resource. It has to call this
-# function and must do so once a resource for re-labeling a resource
-def ACMUnlabelResource(resource):
- s, o = traceCommand("xm rmlabel res %s" % (resource))
- labeled_resources["%s" % resource] = 0
-
-
-def isACMResourceLabeled(resource):
- """ Check whether a resource has been labeled using this API
- and while running the application """
- try:
- if labeled_resources["%s" % resource] == 1:
- if acm_verbose:
- print "resource %s already labeled!" % resource
- return True
- except:
- return False
- return False