summaryrefslogtreecommitdiffstats
path: root/patches/opnfv-fuel/0008-deploy-reap.py-Dump-extra-interfaces-information.patch
diff options
context:
space:
mode:
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>2016-08-31 15:12:19 +0000
committerGerrit Code Review <gerrit@172.30.200.206>2016-08-31 15:12:19 +0000
commit122ecbc265d7dc2f6f5dfe6ef6a8f22f66db2e03 (patch)
treea25aa45c3a7a1e8b298492aa743f304e6200217f /patches/opnfv-fuel/0008-deploy-reap.py-Dump-extra-interfaces-information.patch
parent7d7ac35a9994b61f54a894a78861fee2c089a7eb (diff)
parent6be72ecc09f8465469a0a304ffbd6abc47a12915 (diff)
Merge "Upstream: extra interfaces cfg"
Diffstat (limited to 'patches/opnfv-fuel/0008-deploy-reap.py-Dump-extra-interfaces-information.patch')
-rw-r--r--patches/opnfv-fuel/0008-deploy-reap.py-Dump-extra-interfaces-information.patch97
1 files changed, 0 insertions, 97 deletions
diff --git a/patches/opnfv-fuel/0008-deploy-reap.py-Dump-extra-interfaces-information.patch b/patches/opnfv-fuel/0008-deploy-reap.py-Dump-extra-interfaces-information.patch
deleted file mode 100644
index 9ed79cc4..00000000
--- a/patches/opnfv-fuel/0008-deploy-reap.py-Dump-extra-interfaces-information.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-From e8232eca62d67c2bac1d34f5b2adfeba1a580634 Mon Sep 17 00:00:00 2001
-From: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
-Date: Wed, 4 May 2016 18:31:09 +0200
-Subject: [PATCH] deploy/reap.py: Dump extra interfaces information.
-
-Since on AArch64, Ubuntu local mirror lacks arm64 packages (see [1]),
-Fuel master requires internet connectivity during deploy, and hence
-a way to setup such a public (extra) interface automatically.
-
-Previous commit "transplant: Generate extra interfaces config file"
-introduced support for passing this information via DEA (override),
-which may define a IFCGF_<interface> section in its 'fuel:'
-section, containing the necessary keys to produce a ifcfg-<interface>
-file, like in this example:
-
-fuel:
- IFCFG_ETH1:
- device: eth1
- ipaddress: 10.0.1.10
- netmask: 255.255.255.0
- gateway: 10.0.1.254
-
-In order for Network Manager to use the newly added interfaces
-for outgoing traffic and honor their GATEWAY setting (e.g. if we just
-added one public interface), the default route on admin iface (most of
-the time called eth0) is disabled when extra interfaces are present.
-
-FIXME: Only supports lowercase interface names, but so does Fuel,
-see related bug report [2].
-
-[1] https://jira.opnfv.org/browse/ARMBAND-35
-[2] https://jira.opnfv.org/browse/FUEL-136
-
-Change-Id: I6f0a759c65a435ec8bd883a04c8d1adca109cc13
-Signed-off-by: Alexandu Avadanii <alexandru.avadanii@enea.com>
-Signed-off-by: Josep Puigdemont <josep.puigdemont@enea.com>
----
- deploy/reap.py | 34 ++++++++++++++++++++++++++++++++++
- 1 file changed, 34 insertions(+)
-
-diff --git a/deploy/reap.py b/deploy/reap.py
-index ed5bc99..9f14e35 100644
---- a/deploy/reap.py
-+++ b/deploy/reap.py
-@@ -15,6 +15,8 @@ import yaml
- import glob
- import shutil
- import tempfile
-+import re
-+import netaddr
-
- from common import (
- N,
-@@ -248,6 +250,40 @@ class Reap(object):
- if key not in ['ipaddress', 'netmask',
- 'dhcp_pool_start', 'dhcp_pool_end', 'ssh_network']:
- del fuel['ADMIN_NETWORK'][key]
-+
-+ ## FIXME(armband): Factor in support for adding public/other interfaces.
-+ ## TODO: Following block expects interface name(s) to be lowercase only
-+ interfaces_list = exec_cmd('ip -o -4 a | grep -e "e[nt][hopsx].*"')
-+ for interface in re.split('\n', interfaces_list):
-+ # Sample output line from above cmd:
-+ # 3: eth1 inet 10.0.2.10/24 scope global eth1 valid_lft forever ...
-+ ifcfg = re.split(r'\s+', interface)
-+ ifcfg_name = ifcfg[1]
-+ ifcfg_ipaddr = ifcfg[3]
-+
-+ # Filter out admin interface (device name is not known, match IP)
-+ current_network = netaddr.IPNetwork(ifcfg_ipaddr)
-+ if str(current_network.ip) == fuel['ADMIN_NETWORK']['ipaddress']:
-+ continue
-+
-+ # Read ifcfg-* network interface config file, write IFCFG_<IFNAME>
-+ ifcfg_sec = 'IFCFG_%s' % ifcfg_name.upper()
-+ fuel[ifcfg_sec] = {}
-+ ifcfg_data = {}
-+ ifcfg_f = ('/etc/sysconfig/network-scripts/ifcfg-%s' % ifcfg_name)
-+ with open(ifcfg_f) as f:
-+ for line in f:
-+ if line.startswith('#'):
-+ continue
-+ (key, val) = line.split('=')
-+ ifcfg_data[key.lower()] = val.rstrip()
-+
-+ # Keep only needed info (e.g. filter-out type=Ethernet).
-+ fuel[ifcfg_sec]['ipaddress'] = ifcfg_data['ipaddr']
-+ fuel[ifcfg_sec]['device'] = ifcfg_data['device']
-+ fuel[ifcfg_sec]['netmask'] = str(current_network.netmask)
-+ fuel[ifcfg_sec]['gateway'] = ifcfg_data['gateway']
-+
- self.write_yaml(self.dea_file, {'fuel': fuel})
-
- def reap_network_settings(self):
---
-2.5.5
-