summaryrefslogtreecommitdiff
path: root/cloudinit/net/udev.py
diff options
context:
space:
mode:
authorScott Moser <smoser@ubuntu.com>2016-08-10 09:06:15 -0600
committerScott Moser <smoser@ubuntu.com>2016-08-10 09:06:15 -0600
commitc3c3dc693c14175e110b5fe125d4d5f98ace9700 (patch)
tree8858702c2c8a6ad4bf1bb861a4565e0a9c28e588 /cloudinit/net/udev.py
parent5bd3493d732e5b1902872958e8681f17cbc81ce5 (diff)
downloadcloud-init-trunk.tar.gz
README: Mention move of revision control to git.HEADtrunk
cloud-init development has moved its revision control to git. It is available at https://code.launchpad.net/cloud-init Clone with git clone https://git.launchpad.net/cloud-init or git clone git+ssh://git.launchpad.net/cloud-init For more information see https://git.launchpad.net/cloud-init/tree/HACKING.rst
Diffstat (limited to 'cloudinit/net/udev.py')
-rw-r--r--cloudinit/net/udev.py54
1 files changed, 0 insertions, 54 deletions
diff --git a/cloudinit/net/udev.py b/cloudinit/net/udev.py
deleted file mode 100644
index 09188295..00000000
--- a/cloudinit/net/udev.py
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright (C) 2015 Canonical Ltd.
-#
-# Author: Ryan Harper <ryan.harper@canonical.com>
-#
-# Curtin is free software: you can redistribute it and/or modify it under
-# the terms of the GNU Affero General Public License as published by the
-# Free Software Foundation, either version 3 of the License, or (at your
-# option) any later version.
-#
-# Curtin is distributed in the hope that it will be useful, but WITHOUT ANY
-# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-# FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for
-# more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with Curtin. If not, see <http://www.gnu.org/licenses/>.
-
-
-def compose_udev_equality(key, value):
- """Return a udev comparison clause, like `ACTION=="add"`."""
- assert key == key.upper()
- return '%s=="%s"' % (key, value)
-
-
-def compose_udev_attr_equality(attribute, value):
- """Return a udev attribute comparison clause, like `ATTR{type}=="1"`."""
- assert attribute == attribute.lower()
- return 'ATTR{%s}=="%s"' % (attribute, value)
-
-
-def compose_udev_setting(key, value):
- """Return a udev assignment clause, like `NAME="eth0"`."""
- assert key == key.upper()
- return '%s="%s"' % (key, value)
-
-
-def generate_udev_rule(interface, mac):
- """Return a udev rule to set the name of network interface with `mac`.
-
- The rule ends up as a single line looking something like:
-
- SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*",
- ATTR{address}="ff:ee:dd:cc:bb:aa", NAME="eth0"
- """
- rule = ', '.join([
- compose_udev_equality('SUBSYSTEM', 'net'),
- compose_udev_equality('ACTION', 'add'),
- compose_udev_equality('DRIVERS', '?*'),
- compose_udev_attr_equality('address', mac),
- compose_udev_setting('NAME', interface),
- ])
- return '%s\n' % rule
-
-# vi: ts=4 expandtab syntax=python