ztpserver Package

ztpserver Package

app Module

config Module

class ztpserver.config.Attr(name, **kwargs)[source]

Bases: object

Base Attribute class for deriving all attributes for a Config object

Parameters:
  • name – required argument specifies attribute name
  • type – optional keyword argument specifies attribute type. the default argument type is String
  • group – optional keyword argument specifies attribute group. All attribute names must be unique within the group
  • default – optional keyword argument specifies the default value for the attribute. The default value is None
class ztpserver.config.BoolAttr(name, **kwargs)[source]

Bases: ztpserver.config.Attr

Boolean attribute class derived from Attr

class ztpserver.config.Config[source]

Bases: _abcoll.Mapping

The Config class represents the configuration for collection.

add_attribute(item, group=None)[source]
add_group(group)[source]
clear_value(name, group=None)[source]

clears the attributes value and resets it to default

read(filename)[source]
set_value(name, value, group=None)[source]
class ztpserver.config.Group(name, config)[source]

Bases: _abcoll.Mapping

The Group class provides a logical grouping of attributes in a Config object. Group names must be unique for each Config instance and cannot be assigned values.

Parameters:
  • name – the name of the group
  • config – the config object the group is associated with
add_attribute(item)[source]
class ztpserver.config.IntAttr(name, minvalue=None, maxvalue=None, **kwargs)[source]

Bases: ztpserver.config.Attr

Integer attribute class derived from Attr

Parameters:
  • minvalue – specifies the min value. the default is None
  • maxvalue – specifies the max value. the default is None
class ztpserver.config.ListAttr(name, delimiter=', ', **kwargs)[source]

Bases: ztpserver.config.Attr

List attribute class derived from Attr

Parameters:delimiter – specifies the delimiter character to split the string on
class ztpserver.config.StrAttr(name, choices=None, **kwargs)[source]

Bases: ztpserver.config.Attr

String attribute class derived from Attr

Parameters:choices – optional keyword argument specifies valid choices

controller Module

topology Module

class ztpserver.topology.Collection[source]

Bases: _abcoll.Mapping, _abcoll.Callable

exception ztpserver.topology.DataFileError[source]

Bases: exceptions.Exception

class ztpserver.topology.DataFileMixin[source]

Bases: object

deserialize()[source]
dump(fobj, data, content_type='text/plain')[source]
dumps(data, content_type='text/plain')[source]
load(fobj, content_type='text/plain')[source]
loads(data, content_type='text/plain')[source]
serialize()[source]
class ztpserver.topology.Functions[source]

Bases: object

classmethod exact(arg, value)[source]
classmethod excludes(arg, value)[source]
classmethod includes(arg, value)[source]
classmethod regex(arg, value)[source]
class ztpserver.topology.InterfacePattern(interface, device, port, tags=None)[source]

Bases: object

match_device(device, variables={})[source]
match_neighbors(neighbors, variables)[source]
match_port(port)[source]
range(interface_range)[source]
serialize()[source]
class ztpserver.topology.Node(**kwargs)[source]

Bases: object

class Neighbor

Bases: tuple

Neighbor(device, port)

device

Alias for field number 0

port

Alias for field number 1

Node.add_neighbors(neighbors)[source]
Node.convert(data)[source]
Node.hasneighbors()[source]
Node.serialize()[source]
exception ztpserver.topology.NodeErrror[source]

Bases: exceptions.Exception

class ztpserver.topology.OrderedCollection(*args, **kwds)[source]

Bases: collections.OrderedDict, _abcoll.Callable

class ztpserver.topology.Pattern(name, definition, **kwargs)[source]

Bases: object

add_interface(interface, device, port, tags=None)[source]
add_interfaces(interfaces)[source]
deserialize(contents)[source]
load(filename, content_type='application/yaml')[source]
match_node(node, variables={})[source]
serialize()[source]
exception ztpserver.topology.PatternError[source]

Bases: exceptions.Exception

class ztpserver.topology.Resources[source]

Bases: object

allocate(pool, node)[source]
dump(data, fobj, content_type='application/yaml')[source]
dumps(data, pool, content_type='application/yaml')[source]
load(fobj, content_type='application/yaml')[source]
loads(data, content_type='application/yaml')[source]
lookup(pool, node)[source]
class ztpserver.topology.Topology(contents=None)[source]

Bases: object

add_pattern(pattern)[source]
deserialize(contents)[source]
get_patterns(node)[source]

returns a list of possible patterns for a given node

load(fobj, content_type='application/yaml')[source]
loads(data, content_type='application/yaml')[source]
match_node(node)[source]

Returns a list of Pattern classes satisfied by the Node argument

exception ztpserver.topology.TopologyError[source]

Bases: exceptions.Exception

ztpserver.topology.clear()[source]
ztpserver.topology.create_node(nodeattrs)[source]
ztpserver.topology.default_filename()[source]
ztpserver.topology.load(filename=None, content_type='application/yaml')[source]
ztpserver.topology.loads(data, content_type='application/yaml')[source]
ztpserver.topology.resources(attributes, node)[source]

repository Module

class ztpserver.repository.FileObject(name, path=None)[source]

Bases: object

represents a file object from the file store

contents
exists
exception ztpserver.repository.FileObjectNotFound[source]

Bases: exceptions.Exception

raised if url not found in the file store

class ztpserver.repository.FileStore(path)[source]

Bases: object

represents the file store

add_file(filepath)[source]
add_folder(folderpath)
delete_file(filepath)[source]
exists(filepath)[source]
get_file(filepath)[source]
write_file(filepath, contents, binary=False)
exception ztpserver.repository.FileStoreError[source]

Bases: exceptions.Exception

base exception class for FileStore objects

ztpserver.repository.create_file_store(name, basepath=None)[source]

creates a new FileStore object

ztpserver.repository.create_node(headers)[source]

returns a Node object using HTTP X-Arista headers

serializers Module

class ztpserver.serializers.JSONSerializer[source]

Bases: object

deserialize(data, **kwargs)[source]
serialize(data, **kwargs)[source]
class ztpserver.serializers.Serializer[source]

Bases: object

The Serializer will serialize a data structure based on the content-type. If the content-type is not supported the Serializer will simply return the data as a str object

convert(data)
deserialize(data, content_type, clsobj=None, **kwargs)[source]

deserialize the data based on the content_type

If a valid handler does not exist for the requested content_type, then the data is returned as a string

Parameters:
  • data – data to be deserialized
  • content_type – string specifies the deserialize handler to use
  • clsobj – class object to return if specified
serialize(data, content_type, **kwargs)[source]

serialize the data base on the content_type

If a valid handler does not exist for the requested content_type, then the data is returned as a string

Parameters:
  • data – data to be serialized
  • content_type – string specifies the serialize handler to use
exception ztpserver.serializers.SerializerError

Bases: exceptions.Exception

base error raised by serialization functions

class ztpserver.serializers.YAMLSerializer[source]

Bases: object

The YAMLSerializer class will generate a RuntimeWarning if the PyYaml module is unavialable

deserialize(data, **kwargs)[source]
serialize(data, safe_dump=False, **kwargs)[source]

types Module

class ztpserver.types.Boolean[source]

Bases: object

FALSEVALUES = ['no', 'false', '0', 'off']
TRUEVALUES = ['yes', 'true', '1', 'on']
class ztpserver.types.Integer(minvalue=None, maxvalue=None)[source]

Bases: object

class ztpserver.types.List(delimiter=', ')[source]

Bases: object

class ztpserver.types.String(choices=None)[source]

Bases: object

wsgiapp Module