geni.rspec.pg

class Address(atype)[source]
class Command(cmd, data)[source]
resolve()[source]
exception DuplicateExtensionError(klass)[source]
class Execute(shell, command)[source]
class IPv4Address(address, netmask)[source]
class Install(url, path)[source]
class Interface(name, node, address=None)[source]
EXTENSIONS = []
exception InvalidAddressTypeError(addr)[source]
addAddress(address)[source]
property name
class L2GRE(name=None)[source]
class L3GRE(name=None)[source]
class LAN(name=None)[source]
DEFAULT_BW = -1
DEFAULT_LAT = 0
DEFAULT_PLR = 0.0
EXTENSIONS = [('Site', <class 'geni.rspec.igext.Site'>), ('setForceShaping', <class 'geni.rspec.emulab.emuext.setForceShaping'>), ('setNoBandwidthShaping', <class 'geni.rspec.emulab.emuext.setNoBandwidthShaping'>), ('setNoInterSwitchLinks', <class 'geni.rspec.emulab.emuext.setNoInterSwitchLinks'>), ('setJumboFrames', <class 'geni.rspec.emulab.emuext.setJumboFrames'>), ('createSharedVlan', <class 'geni.rspec.emulab.emuext.createSharedVlan'>), ('setProperties', <class 'geni.rspec.emulab.emuext.setProperties'>), ('UserData', <class 'geni.rspec.emulab.userdata.UserData'>)]
LNKID = 0
addChild(obj)[source]
addComponentManager(component_manager)[source]
addInterface(intf)[source]
addNode(node)[source]
addRawElement(elem)[source]
property best_effort
connectSharedVlan(name)[source]
disableMACLearning()[source]
enableVlanTagging()[source]
classmethod newLinkID()[source]
property trivial_ok
property vlan_tagging
class Namespaces[source]
CLIENT = http://www.protogeni.net/resources/rspec/ext/client/1
DATA = http://www.protogeni.net/resources/rspec/ext/user-data/1
DELAY = http://www.protogeni.net/resources/rspec/ext/delay/1
EMULAB = http://www.protogeni.net/resources/rspec/ext/emulab/1
INFO = http://www.protogeni.net/resources/rspec/ext/site-info/1
JACKS = http://www.protogeni.net/resources/rspec/ext/jacks/1
PARAMS = http://www.protogeni.net/resources/rspec/ext/profile-parameters/1
RS = http://www.protogeni.net/resources/rspec/ext/emulab/1
TOUR = http://www.protogeni.net/resources/rspec/ext/apt-tour/1
VTOP = http://www.protogeni.net/resources/rspec/ext/emulab/1
class Node(name, ntype, component_id=None, exclusive=None)[source]

A basic Node class. Typically you want to instantiate one of its subclasses, such as RawPC, XenVM, or DockerContainer.

Parameters
  • name (str) – Your name for this node. This must be unique within a single Request object.

  • ntype (str) – The physical or virtual machine type to which this node should be mapped.

  • component_id (Optional[str]) – The component_id of the site physical node to which you want to bind this node.

  • exclusive (Optional[bool]) – Request this container on an isolated host used only by your sliver. Defaults to unspecified, allowing the site processing the request rspec to assign resources as it prefers.

client_id

Your name for this node. This must be unique within a single Request object.

Type

str

component_id

The component_id of the site physical node to which you want to bind this node.

Type

Optional[str]

exclusive

Request this container on an isolated host used only by your sliver. Defaults to unspecified, allowing the site processing the request rspec to assign resources as it prefers.

Type

Optional[bool]

disk_image

The disk image that should be loaded and run on this node. Should be an image URN.

Type

Optional[str]

exception DuplicateInterfaceName[source]
EXTENSIONS = [('Blockstore', <class 'geni.rspec.igext.Blockstore'>), ('Firewall', <class 'geni.rspec.igext.Firewall'>), ('Firewall', <class 'geni.rspec.igext.Firewall'>), ('Site', <class 'geni.rspec.igext.Site'>), ('Desire', <class 'geni.rspec.igext.Desire'>), ('setUseTypeDefaultImage', <class 'geni.rspec.emulab.emuext.setUseTypeDefaultImage'>), ('setFailureAction', <class 'geni.rspec.emulab.emuext.setFailureAction'>), ('InstantiateOn', <class 'geni.rspec.emulab.emuext.InstantiateOn'>), ('installRootKeys', <class 'geni.rspec.emulab.emuext.installRootKeys'>), ('Attribute', <class 'geni.rspec.emulab.emuext.Attribute'>), ('wirelessSite', <class 'geni.rspec.emulab.emuext.wirelessSite'>), ('UserData', <class 'geni.rspec.emulab.userdata.UserData'>)]
addInterface(name=None, address=None)[source]
addRawElement(elem)[source]
addService(svc)[source]
property name
class NodeType[source]
DOCKER = 'emulab-docker'
RAW = 'raw'
VM = 'emulab-xen'
XEN = 'emulab-xen'
class RawPC(name, component_id=None)[source]
class Request[source]
EXTENSIONS = [('Link', <class 'geni.rspec.pg.Link'>), ('LAN', <class 'geni.rspec.pg.LAN'>), ('L3GRE', <class 'geni.rspec.pg.L3GRE'>), ('L2GRE', <class 'geni.rspec.pg.L2GRE'>), ('StitchedLink', <class 'geni.rspec.pg.StitchedLink'>), ('Node', <class 'geni.rspec.pg.Node'>), ('RawPC', <class 'geni.rspec.pg.RawPC'>), ('XenVM', <class 'geni.rspec.igext.XenVM'>), ('DockerContainer', <class 'geni.rspec.igext.DockerContainer'>), ('AddressPool', <class 'geni.rspec.igext.AddressPool'>), ('RemoteBlockstore', <class 'geni.rspec.igext.RemoteBlockstore'>), ('Bridge', <class 'geni.rspec.igext.Bridge'>), ('ParameterData', <class 'geni.rspec.igext.ParameterData'>), ('setCollocateFactor', <class 'geni.rspec.emulab.emuext.setCollocateFactor'>), ('setPackingStrategy', <class 'geni.rspec.emulab.emuext.setPackingStrategy'>), ('setRoutingStyle', <class 'geni.rspec.emulab.emuext.setRoutingStyle'>), ('setDelayImage', <class 'geni.rspec.emulab.emuext.setDelayImage'>), ('BridgedLink', <class 'geni.rspec.emulab.emuext.BridgedLink'>), ('ShapedLink', <class 'geni.rspec.emulab.emuext.ShapedLink'>), ('disableRootKeys', <class 'geni.rspec.emulab.emuext.disableRootKeys'>), ('skipVlans', <class 'geni.rspec.emulab.emuext.skipVlans'>), ('ExperimentFirewall', <class 'geni.rspec.emulab.emuext.ExperimentFirewall'>), ('L1Link', <class 'geni.rspec.emulab.emuext.L1Link'>), ('Switch', <class 'geni.rspec.emulab.emuext.Switch'>), ('EPClan', <class 'geni.rspec.emulab.epclan.EPClan'>), ('EPCNode', <class 'geni.rspec.emulab.epcnode.EPCNode'>), ('EPCVMNode', <class 'geni.rspec.emulab.epcnode.EPCVMNode'>), ('eNodeB', <class 'geni.rspec.emulab.enodeb.eNodeB'>), ('UE', <class 'geni.rspec.emulab.ue.UE'>), ('RFLink', <class 'geni.rspec.emulab.rflink.RFLink'>)]
addRawElement(elem)[source]
addResource(rsrc)[source]
addTour(tour)[source]
hasTour()[source]
property resources
toXMLString(pretty_print=False, ucode=False)[source]

Return the current request contents as an XML string that represents an rspec in the GENIv3 format.

writeXML(path)[source]

Write the current request contents as an XML file that represents an rspec in the GENIv3 format.

class Resource[source]
addNamespace(ns)[source]
class Service[source]
exception TooManyInterfacesError[source]
exception UnknownComponentManagerError(cid)[source]
VM

alias of geni.rspec.pg.XenVM

class VZContainer(name, exclusive=False)[source]
class XenVM(name, component_id=None, exclusive=False)[source]

Deprecated since version 0.4: Use geni.rspec.igext.XenVM instead.