+++ /dev/null
-import sys
-import xmlrpclib
-import socket
-import gettext
-from urlparse import urlparse
-from sfa.util.sfalogging import logger
-from sfa.util.config import Config
-
-try:
- from sfa.openstack.client import GlanceClient, NovaClient, KeystoneClient
- has_nova = True
-except:
- has_nova = False
-
-
-
-class Shell:
- """
- A simple native shell to a nova backend.
- This class can receive all nova calls to the underlying testbed
- """
-
- # dont care about limiting calls yet
- direct_calls = []
- alias_calls = {}
-
-
- # use the 'capability' auth mechanism for higher performance when the PLC db is local
- def __init__ ( self, config=None) :
- if not config:
- config = Config()
- if has_nova:
- # instantiate managers
- self.auth_manager = KeystoneClient(config)
- self.image_manager = GlanceClient(config)
- self.nova_manager = NovaClient(config)
- else:
- logger.debug('nova access - REST')
- raise SfaNotImplemented('nova access - Rest')
--- /dev/null
+#
+# Extensions for PlanetLab Resources
+# Version 1
+#
+
+namespace plos = "http://www.planet-lab.org/resources/sfa/ext/plos/1"
+
+FWRuleSpec = element plos:attribute {
+ attribute protocol { text },
+ attribute port_range { text },
+ attribute cidr_ip { text }
+}
+
+start = FWRuleSpec
+
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Extensions for PlanetLab Resources
+ Version 1
+
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://www.planet-lab.org/resources/sfa/ext/plos/1" xmlns:plos="http://www.planet-lab.org/resources/sfa/ext/plos/1">
+ <xs:element name="attribute">
+ <xs:complexType>
+ <xs:attribute name="protocol" use="required"/>
+ <xs:attribute name="port_range" use="required"/>
+ <xs:attribute name="cidr_ip" use="required"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>