summaryrefslogtreecommitdiffstats
path: root/ci/genDeploymentConfig.py
diff options
context:
space:
mode:
Diffstat (limited to 'ci/genDeploymentConfig.py')
-rw-r--r--ci/genDeploymentConfig.py21
1 files changed, 20 insertions, 1 deletions
diff --git a/ci/genDeploymentConfig.py b/ci/genDeploymentConfig.py
index eecdd2f2..0a21fffa 100644
--- a/ci/genDeploymentConfig.py
+++ b/ci/genDeploymentConfig.py
@@ -14,6 +14,9 @@ from distutils.version import LooseVersion, StrictVersion
import os
import yaml
import subprocess
+import socket
+import fcntl
+import struct
#
# Parse parameters
@@ -59,6 +62,21 @@ def load_yaml(filepath):
except yaml.YAMLError as exc:
print(exc)
+
+def get_ip_address(ifname):
+ """Get local IP"""
+ s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
+ return socket.inet_ntoa(fcntl.ioctl(
+ s.fileno(),
+ 0x8915, # SIOCGIFADDR
+ struct.pack('256s', bytes(ifname.encode('utf-8')[:15]))
+ )[20:24])
+
+
+#
+# Config import
+#
+
#
# Config import
#
@@ -79,7 +97,8 @@ for storage in config['opnfv']['storage']:
# Add some OS environment variables
config['os'] = {'home': HOME,
'user': USER,
- }
+ 'brAdmIP': get_ip_address(config['opnfv']['spaces_dict']
+ ['admin']['bridge'])}
# Prepare interface-enable, more easy to do it here
ifnamelist = set()