mirror of
https://github.com/CumulusNetworks/ifupdown2.git
synced 2024-05-06 15:54:50 +00:00
few minor documentation cleanups
This commit is contained in:
@@ -6,8 +6,8 @@ for ifupdown2 addon modules to interact directly with tools
|
|||||||
like iproute2, brctl etc.
|
like iproute2, brctl etc.
|
||||||
|
|
||||||
|
|
||||||
bridgeutils.py
|
bridgeutils
|
||||||
==============
|
===========
|
||||||
|
|
||||||
Helper module to work with bridgeutil commands
|
Helper module to work with bridgeutil commands
|
||||||
|
|
||||||
@@ -15,8 +15,8 @@ Helper module to work with bridgeutil commands
|
|||||||
|
|
||||||
.. autoclass:: brctl
|
.. autoclass:: brctl
|
||||||
|
|
||||||
ifenslaveutil.py
|
ifenslaveutil
|
||||||
================
|
=============
|
||||||
|
|
||||||
Helper module to interact with linux api to create bonds.
|
Helper module to interact with linux api to create bonds.
|
||||||
Currently this is via sysfs.
|
Currently this is via sysfs.
|
||||||
@@ -25,8 +25,8 @@ Currently this is via sysfs.
|
|||||||
|
|
||||||
.. autoclass:: ifenslaveutil
|
.. autoclass:: ifenslaveutil
|
||||||
|
|
||||||
dhclient.py
|
dhclient
|
||||||
===========
|
========
|
||||||
|
|
||||||
Helper module to interact with dhclient tools.
|
Helper module to interact with dhclient tools.
|
||||||
|
|
||||||
@@ -34,8 +34,8 @@ Helper module to interact with dhclient tools.
|
|||||||
|
|
||||||
.. autoclass:: dhclient
|
.. autoclass:: dhclient
|
||||||
|
|
||||||
iproute2.py
|
iproute2
|
||||||
===========
|
========
|
||||||
|
|
||||||
Helper module to interact with iproute2 tools.
|
Helper module to interact with iproute2 tools.
|
||||||
|
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
#
|
#
|
||||||
# ifupdown2 documentation build configuration file, created by
|
# ifupdown2-addons documentation build configuration file, created by
|
||||||
# sphinx-quickstart on Sun Jul 6 23:49:20 2014.
|
# sphinx-quickstart on Mon Jul 21 11:17:17 2014.
|
||||||
#
|
#
|
||||||
# This file is execfile()d with the current directory set to its containing dir.
|
# This file is execfile()d with the current directory set to its containing dir.
|
||||||
#
|
#
|
||||||
@@ -16,15 +16,13 @@ import sys, os
|
|||||||
# If extensions (or modules to document with autodoc) are in another directory,
|
# If extensions (or modules to document with autodoc) are in another directory,
|
||||||
# add these directories to sys.path here. If the directory is relative to the
|
# add these directories to sys.path here. If the directory is relative to the
|
||||||
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
||||||
|
#sys.path.insert(0, os.path.abspath('.'))
|
||||||
|
|
||||||
sys.path.insert(0, os.path.abspath('../../addons'))
|
sys.path.insert(0, os.path.abspath('../../addons'))
|
||||||
sys.path.append(os.path.abspath('../../'))
|
sys.path.append(os.path.abspath('../../'))
|
||||||
sys.path.append(os.path.abspath('../../ifupdownaddons'))
|
sys.path.append(os.path.abspath('../../ifupdownaddons'))
|
||||||
sys.path.append(os.path.abspath('../../../ifupdown2'))
|
sys.path.append(os.path.abspath('../../../ifupdown2'))
|
||||||
|
|
||||||
#sys.path.insert(0, os.path.abspath('/work/monster-03/roopa/cumulus-2.1-multimac/packages/ifupdown2-addons/pkg'))
|
|
||||||
#sys.path.append(os.path.abspath('/work/monster-03/roopa/cumulus-2.1-multimac/packages/ifupdown2/pkg'))
|
|
||||||
#sys.path.append(os.path.abspath('/work/monster-03/roopa/cumulus-2.1-multimac/packages/ifupdown2/'))
|
|
||||||
|
|
||||||
# -- General configuration -----------------------------------------------------
|
# -- General configuration -----------------------------------------------------
|
||||||
|
|
||||||
# If your documentation needs a minimal Sphinx version, state it here.
|
# If your documentation needs a minimal Sphinx version, state it here.
|
||||||
@@ -32,7 +30,7 @@ sys.path.append(os.path.abspath('../../../ifupdown2'))
|
|||||||
|
|
||||||
# Add any Sphinx extension module names here, as strings. They can be extensions
|
# Add any Sphinx extension module names here, as strings. They can be extensions
|
||||||
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
|
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
|
||||||
extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo']
|
extensions = ['sphinx.ext.autodoc']
|
||||||
|
|
||||||
# Add any paths that contain templates here, relative to this directory.
|
# Add any paths that contain templates here, relative to this directory.
|
||||||
templates_path = ['_templates']
|
templates_path = ['_templates']
|
||||||
@@ -171,7 +169,7 @@ html_static_path = ['_static']
|
|||||||
#html_file_suffix = None
|
#html_file_suffix = None
|
||||||
|
|
||||||
# Output file base name for HTML help builder.
|
# Output file base name for HTML help builder.
|
||||||
htmlhelp_basename = 'ifupdown2doc'
|
htmlhelp_basename = 'ifupdown2-addonsdoc'
|
||||||
|
|
||||||
|
|
||||||
# -- Options for LaTeX output --------------------------------------------------
|
# -- Options for LaTeX output --------------------------------------------------
|
||||||
@@ -190,7 +188,7 @@ latex_elements = {
|
|||||||
# Grouping the document tree into LaTeX files. List of tuples
|
# Grouping the document tree into LaTeX files. List of tuples
|
||||||
# (source start file, target name, title, author, documentclass [howto/manual]).
|
# (source start file, target name, title, author, documentclass [howto/manual]).
|
||||||
latex_documents = [
|
latex_documents = [
|
||||||
('index', 'ifupdown2.tex', u'ifupdown2 Documentation',
|
('index', 'ifupdown2-addons.tex', u'ifupdown2-addons Documentation',
|
||||||
u'Roopa Prabhu', 'manual'),
|
u'Roopa Prabhu', 'manual'),
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -220,7 +218,7 @@ latex_documents = [
|
|||||||
# One entry per manual page. List of tuples
|
# One entry per manual page. List of tuples
|
||||||
# (source start file, name, description, authors, manual section).
|
# (source start file, name, description, authors, manual section).
|
||||||
man_pages = [
|
man_pages = [
|
||||||
('index', 'ifupdown2', u'ifupdown2 Documentation',
|
('index', 'ifupdown2-addons', u'ifupdown2-addons Documentation',
|
||||||
[u'Roopa Prabhu'], 1)
|
[u'Roopa Prabhu'], 1)
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -234,8 +232,8 @@ man_pages = [
|
|||||||
# (source start file, target name, title, author,
|
# (source start file, target name, title, author,
|
||||||
# dir menu entry, description, category)
|
# dir menu entry, description, category)
|
||||||
texinfo_documents = [
|
texinfo_documents = [
|
||||||
('index', 'ifupdown2', u'ifupdown2 Documentation',
|
('index', 'ifupdown2-addons', u'ifupdown2-addons Documentation',
|
||||||
u'Roopa Prabhu', 'ifupdown2', 'One line description of project.',
|
u'Roopa Prabhu', 'ifupdown2-addons', 'One line description of project.',
|
||||||
'Miscellaneous'),
|
'Miscellaneous'),
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -247,7 +245,3 @@ texinfo_documents = [
|
|||||||
|
|
||||||
# How to display URL addresses: 'footnote', 'no', or 'inline'.
|
# How to display URL addresses: 'footnote', 'no', or 'inline'.
|
||||||
#texinfo_show_urls = 'footnote'
|
#texinfo_show_urls = 'footnote'
|
||||||
|
|
||||||
|
|
||||||
# Example configuration for intersphinx: refer to the Python standard library.
|
|
||||||
intersphinx_mapping = {'http://docs.python.org/': None}
|
|
||||||
|
@@ -3,31 +3,36 @@ Development Corner
|
|||||||
|
|
||||||
Writing a ifupdown2 addon module
|
Writing a ifupdown2 addon module
|
||||||
--------------------------------
|
--------------------------------
|
||||||
ifupdown2 addon modules are part of the python-ifupdown2 package.
|
ifupdown2 addon modules are part of the python-ifupdown2-addons package.
|
||||||
They are installed under /usr/share/ifupdownaddons directory on the target box.
|
They are installed under /usr/share/ifupdownaddons directory on the target
|
||||||
|
system.
|
||||||
|
|
||||||
The center of the universe for an addon module is the 'class iface' object
|
The center of the universe for an addon module is the 'class iface' object
|
||||||
exported by the python-ifupdown2 package.
|
exported by the python-ifupdown2 package.
|
||||||
|
|
||||||
The iface object contains all config the user wanted. For more details see
|
The iface object is modeled after an iface entry in the user provided network
|
||||||
the api refernce for the iface class.
|
configuration file (eg. /etc/network/interfaces). For more details see
|
||||||
|
the api reference for the iface class.
|
||||||
|
|
||||||
ifupdown2 invokes the addon module by invoking a few methods. And hence
|
ifupdown2 dynamically loads a python addon module. It expects the addon module
|
||||||
it expects a few interfaces from the addon modules.
|
to implement a few methods.
|
||||||
|
|
||||||
* all modules must inherit from moduleBase class
|
* all addon modules must inherit from moduleBase class
|
||||||
* the module should implement a class by the same name
|
* the module must implement a class by the same name
|
||||||
* the interface object (class iface) and the operation to be performed is
|
* the network interface object (class iface) and the operation to be performed
|
||||||
passed to the modules. In cases when the operation is query-check, where
|
is passed to the modules. Operation can be any of 'pre-up', 'up', 'post-up',
|
||||||
the module has to compare between the given and running state, the module
|
'pre-down', 'down', 'post-down', 'query-check', 'query-running'.
|
||||||
also takes an addional queryobjcur iface object
|
The module can choose to support a subset or all operations.
|
||||||
* the python addon class should provide a few methods:
|
In cases when the operation is query-check, the module must compare between
|
||||||
|
the given and running state and return the checked state of the object in
|
||||||
|
queryobjcur passed as argument to the run menthod.
|
||||||
|
* the python addon class must provide a few methods:
|
||||||
* run() : method to configure the interface.
|
* run() : method to configure the interface.
|
||||||
* get_ops() : must return a list of operations it supports.
|
* get_ops() : must return a list of operations it supports.
|
||||||
eg: 'pre-up', 'post-down'
|
eg: 'pre-up', 'post-down'
|
||||||
* get_dependent_ifacenames() : must return a list of interfaces the
|
* get_dependent_ifacenames() : must return a list of interfaces the
|
||||||
interface is dependent on. This is used to build the dependency list
|
supported interface is dependent on. This is used to build the
|
||||||
for sorting and executing interfaces in dependency order.
|
dependency list for sorting and executing interfaces in dependency order.
|
||||||
* if the module supports -r option to ifquery, ie ability to construct the
|
* if the module supports -r option to ifquery, ie ability to construct the
|
||||||
ifaceobj from running state, it can optionally implement the
|
ifaceobj from running state, it can optionally implement the
|
||||||
get_dependent_ifacenames_running() method, to return the list of
|
get_dependent_ifacenames_running() method, to return the list of
|
||||||
@@ -38,13 +43,14 @@ it expects a few interfaces from the addon modules.
|
|||||||
* provide a dictionary of all supported attributes in the _modinfo
|
* provide a dictionary of all supported attributes in the _modinfo
|
||||||
attribute. This is useful for syntax help and man page generation.
|
attribute. This is useful for syntax help and man page generation.
|
||||||
|
|
||||||
python-ifupdown2 package also installs a ifupdownaddons python package that
|
python-ifupdown2-addons package also installs ifupdownaddons python package
|
||||||
contains helper modules for all addon modules.
|
that contains helper modules for all addon modules. Its optional for the addon
|
||||||
|
module to use this package.
|
||||||
|
|
||||||
see example address handling module /usr/share/ifupdownaddons/address.py
|
see example address handling module /usr/share/ifupdownaddons/address.py
|
||||||
|
|
||||||
apiref
|
API reference
|
||||||
------
|
-------------
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 2
|
:maxdepth: 2
|
||||||
|
|
||||||
|
@@ -3,21 +3,26 @@ Getting Started
|
|||||||
|
|
||||||
Prerequisites
|
Prerequisites
|
||||||
-------------
|
-------------
|
||||||
* python-ifupdown2 is current only tested on a debian release wheezy or greater
|
* python-ifupdown2-addons is currently only tested on debian wheezy
|
||||||
* python-ifupdown2 needs python version 2.6 or greater
|
* python-ifupdown2-addons needs python version 2.6 or greater
|
||||||
* build depends on: python-stdeb (for deb builds), python-docutils (for rst2man)
|
* build depends on: python-stdeb (for deb builds), python-docutils (for rst2man)
|
||||||
* depends on python-gvgen package for printing interface graphs (this will be made optional soon)
|
* depends on python-gvgen package for printing interface graphs (this will be made optional in the future)
|
||||||
* optional dependency for template engine: python-mako
|
* optional dependency for template engine: python-mako
|
||||||
|
* python-ifupdown2-addons has an install dependency on python-ifupdown2
|
||||||
|
|
||||||
Building
|
Building
|
||||||
--------
|
--------
|
||||||
git clone <ifupdown2 git url>
|
$git clone <ifupdown2 git url> ifupdown2
|
||||||
cd ifupdown2-addons
|
|
||||||
./build.sh
|
$cd ifupdown2/ifupdown2-addons
|
||||||
|
|
||||||
|
$./build.sh
|
||||||
|
|
||||||
Installing
|
Installing
|
||||||
----------
|
----------
|
||||||
install generated python-ifupdown2-addons-<ver>.deb
|
install generated python-ifupdown2-addons-<ver>.deb using dpkg
|
||||||
|
|
||||||
|
$dpkg -i <python-ifupdown2-addons-<ver>.deb
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -3,8 +3,8 @@
|
|||||||
You can adapt this file completely to your liking, but it should at least
|
You can adapt this file completely to your liking, but it should at least
|
||||||
contain the root `toctree` directive.
|
contain the root `toctree` directive.
|
||||||
|
|
||||||
Welcome to ifupdown2's documentation!
|
Welcome to ifupdown2-addons documentation!
|
||||||
=====================================
|
==========================================
|
||||||
|
|
||||||
Contents:
|
Contents:
|
||||||
=========
|
=========
|
||||||
|
@@ -3,20 +3,25 @@ Getting Started
|
|||||||
|
|
||||||
Prerequisites
|
Prerequisites
|
||||||
-------------
|
-------------
|
||||||
* python-ifupdown2 is current only tested on a debian release wheezy or greater
|
* python-ifupdown2 is currently only tested on debian wheezy
|
||||||
* python-ifupdown2 needs python version 2.6 or greater
|
* python-ifupdown2 needs python version 2.6 or greater
|
||||||
* build depends on: python-stdeb (for deb builds), python-docutils (for rst2man)
|
* build depends on: python-stdeb (for deb builds), python-docutils (for rst2man)
|
||||||
* depends on python-gvgen package for printing interface graphs (this will be made optional soon)
|
* depends on python-gvgen package for printing interface graphs (this will be made optional in the future)
|
||||||
* optional dependency for template engine: python-mako
|
* optional dependency for template engine: python-mako
|
||||||
|
* python-ifupdown2 needs python-ifupdown2-addons to function correctly
|
||||||
|
|
||||||
|
|
||||||
Building
|
Building
|
||||||
--------
|
--------
|
||||||
git clone <ifupdown2 git url>
|
$git clone <ifupdown2 git url> ifupdown2
|
||||||
cd ifupdown2
|
|
||||||
./build.sh
|
|
||||||
|
|
||||||
|
$cd ifupdown2/ifupdown2
|
||||||
|
|
||||||
|
$./build.sh
|
||||||
|
|
||||||
Installing
|
Installing
|
||||||
----------
|
----------
|
||||||
install generated python-ifupdown2-<ver>.deb
|
install generated python-ifupdown2-<ver>.deb
|
||||||
|
|
||||||
|
$dpkg -i <python-ifupdown2-addons-<ver>.deb
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user