1
0
mirror of https://github.com/CumulusNetworks/ifupdown2.git synced 2024-05-06 15:54:50 +00:00
Roopa Prabhu 3808becfbc log /etc/init.d/networking errors into syslog using /usr/bin/logger
Ticket: CM-3193
Reviewed By:
Testing Done: Tested logging of errors in syslog from ifup at bootup

Example error msg:
"Jul 10 03:13:17 cumulus /etc/init.d/networking[1183]: error:
/etc/network/interfaces: line16: invalid auto line 'auto'"

This patch logs into syslog only during bootup
2014-07-16 14:07:49 -07:00
2014-02-14 11:13:09 -08:00
2014-03-27 16:53:32 -07:00

python-ifupdown2
================

This package is a replacement for the debian ifupdown package.
It is completely re-written in python. It maintains the original ifupdown
pluggable architecture and extends it further.

The python-ifupdown2 package provides the infrastructure for
parsing /etc/network/interfaces file, loading, scheduling and state
management of interfaces.

It dynamically loads python modules from /usr/share/ifupdownmodules (provided
 by the python-ifupdown2-addons package). To remain compatible with other
packages that depend on ifupdown, it also executes scripts under /etc/network/.
To make the transition smoother, a python module under
/usr/share/ifupdownmodules will override a script by the same name under
/etc/network/.

It publishes an interface object which is passed to all loadble python
modules (more details about the interface object is available in the
python docs).


pluggable python modules:
=========================
Unlike original ifupdown, all interface configuration is moved to external
python modules. That includes inet, inet6 and dhcp configurations.

It expects a few things from the pluggable modules:
- the module should implement a class by the same name
- the interface object (class iface) and the operation to be performed is
  passed to the modules
- the python class should provide a few methods:
	- run() : method to configure the interface.
	- get_ops() : must return a list of operations it supports.
		eg: 'pre-up', 'post-down'
	- get_dependent_ifacenames() : must return a list of interfaces the
	  interface is dependent on. This is used to build the dependency list
	  for sorting and executing interfaces in parallel.

install instructions
====================
- remove existing ifupdown package
    dpkg -r ifupdown

- download python-ifupdown2*.deb's and install

- or apt-get from testing repo
    apt-get install python-ifupdown2
    apt-get install python-ifupdown2-addons

- or install from deb
    dpkg -i python-ifupdown2-<ver>.deb
    dpkg -i python-ifupdown2-addons-<ver>.deb


extra packages to use addional packages:
======================================

To use templates install python-mako (from wheezy):
    apt-get install python-mako

To generate dot files install python-gvgen (from wheezy):
    apt-get install python-gvgen

Description
No description provided
Readme 6.2 MiB
Languages
Python 99.2%
Shell 0.6%
Makefile 0.2%