Templated network configuration 19/30819/2
authorPiotr Bartosiewicz <p.bartosiewi@partner.samsung.com>
Tue, 25 Nov 2014 13:47:58 +0000 (14:47 +0100)
committerJan Olszak <j.olszak@samsung.com>
Tue, 25 Nov 2014 14:14:51 +0000 (06:14 -0800)
[Bug/Feature]   N/A
[Cause]         N/A
[Solution]      N/A
[Verification]  Build, install, run test

Change-Id: I46af4da7ad656b05193184fc972c1d7489eb25f6

30 files changed:
common/lxc/domain.cpp
common/lxc/domain.hpp
server/configs/containers/business.conf
server/configs/containers/private.conf
server/configs/lxc-templates/business.sh [deleted file]
server/configs/lxc-templates/private.sh [deleted file]
server/configs/lxc-templates/template.sh
server/configs/templates/template.conf
server/container-admin.cpp
server/container-config.hpp
tests/unit_tests/client/configs/ut-client/containers/console1-dbus.conf.in
tests/unit_tests/client/configs/ut-client/containers/console2-dbus.conf.in
tests/unit_tests/client/configs/ut-client/containers/console3-dbus.conf.in
tests/unit_tests/lxc/ut-domain.cpp
tests/unit_tests/server/configs/ut-container-admin/containers/buggy.conf
tests/unit_tests/server/configs/ut-container-admin/containers/missing.conf
tests/unit_tests/server/configs/ut-container-admin/containers/test-no-shutdown.conf
tests/unit_tests/server/configs/ut-container-admin/containers/test.conf
tests/unit_tests/server/configs/ut-container/containers/buggy.conf
tests/unit_tests/server/configs/ut-container/containers/test-dbus.conf.in
tests/unit_tests/server/configs/ut-container/containers/test.conf
tests/unit_tests/server/configs/ut-containers-manager/containers/console1-dbus.conf.in
tests/unit_tests/server/configs/ut-containers-manager/containers/console1.conf
tests/unit_tests/server/configs/ut-containers-manager/containers/console2-dbus.conf.in
tests/unit_tests/server/configs/ut-containers-manager/containers/console2.conf
tests/unit_tests/server/configs/ut-containers-manager/containers/console3-dbus.conf.in
tests/unit_tests/server/configs/ut-containers-manager/containers/console3.conf
tests/unit_tests/server/configs/ut-server/containers/container1.conf
tests/unit_tests/server/configs/ut-server/containers/container2.conf
tests/unit_tests/server/configs/ut-server/containers/container3.conf

index bc2e74b..191f405 100644 (file)
@@ -93,9 +93,12 @@ LxcDomain::State LxcDomain::getState()
     return STATE_MAP.at(str);
 }
 
-bool LxcDomain::create(const std::string& templatePath)
+bool LxcDomain::create(const std::string& templatePath, const char* const* argv)
 {
-    if (!mContainer->create(mContainer, templatePath.c_str(), NULL, NULL, 0, NULL)) {
+    if (!mContainer->create(mContainer,
+                            templatePath.c_str(),
+                            NULL, NULL, 0,
+                            const_cast<char* const*>(argv))) {
         LOGE("Could not create domain " + getName());
         return false;
     }
index 8421d6d..60ae5a4 100644 (file)
@@ -64,7 +64,7 @@ public:
 
     State getState();
 
-    bool create(const std::string& templatePath);
+    bool create(const std::string& templatePath, const char* const* argv);
     bool destroy();
 
     bool start(const char* const* argv);
index 92eb06d..b211ce3 100644 (file)
@@ -1,7 +1,9 @@
 {
     "name" : "business",
-    "lxcTemplate" : "business.sh",
+    "lxcTemplate" : "template.sh",
     "initWithArgs" : [],
+    "ipv4Gateway" : "10.0.102.1",
+    "ipv4" : "10.0.102.2",
     "cpuQuotaForeground" : -1,
     "cpuQuotaBackground" : 10000,
     "enableDbusIntegration" : true,
index 074f4f3..b4fb56a 100644 (file)
@@ -1,7 +1,9 @@
 {
     "name" : "private",
-    "lxcTemplate" : "private.sh",
+    "lxcTemplate" : "template.sh",
     "initWithArgs" : [],
+    "ipv4Gateway" : "10.0.101.1",
+    "ipv4" : "10.0.101.2",
     "cpuQuotaForeground" : -1,
     "cpuQuotaBackground" : 10000,
     "enableDbusIntegration" : true,
diff --git a/server/configs/lxc-templates/business.sh b/server/configs/lxc-templates/business.sh
deleted file mode 100755 (executable)
index 21f7d2e..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-#!/bin/bash
-
-echo LXC template, args: $@
-
-options=$(getopt -o p:n: -l rootfs:,path:,name: -- "$@")
-if [ $? -ne 0 ]; then
-    exit 1
-fi
-eval set -- "$options"
-
-while true
-do
-    case "$1" in
-        -p|--path)      path=$2; shift 2;;
-        --rootfs)       rootfs=$2; shift 2;;
-        -n|--name)      name=$2; shift 2;;
-        --)             shift 1; break ;;
-        *)              break ;;
-    esac
-done
-
-br_name="virbr-${name}"
-sub_net="101" # TODO from param
-
-# XXX assume rootfs if mounted from iso
-
-# Prepare container configuration file
-> ${path}/config
-cat <<EOF >> ${path}/config
-lxc.utsname = ${name}
-lxc.rootfs = ${rootfs}
-
-# userns 1-to-1 mapping
-#lxc.id_map = u 0 0 65536
-#lxc.id_map = g 0 0 65536
-
-lxc.pts = 256
-lxc.tty = 0
-
-lxc.mount.auto = proc sys cgroup
-lxc.mount.entry = /var/run/containers/${name}/run var/run none rw,bind 0 0
-
-lxc.network.type = veth
-lxc.network.link =  ${br_name}
-lxc.network.flags = up
-lxc.network.name = eth0
-lxc.network.veth.pair = veth-${name}
-lxc.network.ipv4.gateway = 10.0.${sub_net}.1
-lxc.network.ipv4 = 10.0.${sub_net}.2/24
-
-lxc.hook.pre-start = ${path}/pre-start.sh
-
-#lxc.loglevel = TRACE
-#lxc.logfile = /tmp/${name}.log
-EOF
-
-# prepare pre start hook
-cat <<EOF >> ${path}/pre-start.sh
-if [ -z "\$(/usr/sbin/brctl show | /bin/grep -P "${br_name}\t")" ]
-then
-    /usr/sbin/brctl addbr ${br_name}
-    /usr/sbin/brctl setfd ${br_name} 0
-    /sbin/ifconfig ${br_name} 10.0.${sub_net}.1 netmask 255.255.255.0 up
-fi
-if [ -z "\$(/usr/sbin/iptables -t nat -S | /bin/grep MASQUERADE)" ]
-then
-    /bin/echo 1 > /proc/sys/net/ipv4/ip_forward
-    /usr/sbin/iptables -t nat -A POSTROUTING -s 10.0.0.0/16 ! -d 10.0.0.0/16 -j MASQUERADE
-fi
-EOF
-
-chmod 755 ${path}/pre-start.sh
diff --git a/server/configs/lxc-templates/private.sh b/server/configs/lxc-templates/private.sh
deleted file mode 100755 (executable)
index 542093a..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-#!/bin/bash
-
-echo LXC template, args: $@
-
-options=$(getopt -o p:n: -l rootfs:,path:,name: -- "$@")
-if [ $? -ne 0 ]; then
-    exit 1
-fi
-eval set -- "$options"
-
-while true
-do
-    case "$1" in
-        -p|--path)      path=$2; shift 2;;
-        --rootfs)       rootfs=$2; shift 2;;
-        -n|--name)      name=$2; shift 2;;
-        --)             shift 1; break ;;
-        *)              break ;;
-    esac
-done
-
-br_name="virbr-${name}"
-sub_net="102" # TODO from param
-
-# XXX assume rootfs if mounted from iso
-
-# Prepare container configuration file
-> ${path}/config
-cat <<EOF >> ${path}/config
-lxc.utsname = ${name}
-lxc.rootfs = ${rootfs}
-
-# userns 1-to-1 mapping
-#lxc.id_map = u 0 0 65536
-#lxc.id_map = g 0 0 65536
-
-lxc.pts = 256
-lxc.tty = 0
-
-lxc.mount.auto = proc sys cgroup
-lxc.mount.entry = /var/run/containers/${name}/run var/run none rw,bind 0 0
-
-lxc.network.type = veth
-lxc.network.link =  ${br_name}
-lxc.network.flags = up
-lxc.network.name = eth0
-lxc.network.veth.pair = veth-${name}
-lxc.network.ipv4.gateway = 10.0.${sub_net}.1
-lxc.network.ipv4 = 10.0.${sub_net}.2/24
-
-lxc.hook.pre-start = ${path}/pre-start.sh
-
-#lxc.loglevel = TRACE
-#lxc.logfile = /tmp/${name}.log
-EOF
-
-# prepare pre start hook
-cat <<EOF >> ${path}/pre-start.sh
-if [ -z "\$(/usr/sbin/brctl show | /bin/grep -P "${br_name}\t")" ]
-then
-    /usr/sbin/brctl addbr ${br_name}
-    /usr/sbin/brctl setfd ${br_name} 0
-    /sbin/ifconfig ${br_name} 10.0.${sub_net}.1 netmask 255.255.255.0 up
-fi
-if [ -z "\$(/usr/sbin/iptables -t nat -S | /bin/grep MASQUERADE)" ]
-then
-    /bin/echo 1 > /proc/sys/net/ipv4/ip_forward
-    /usr/sbin/iptables -t nat -A POSTROUTING -s 10.0.0.0/16 ! -d 10.0.0.0/16 -j MASQUERADE
-fi
-EOF
-
-chmod 755 ${path}/pre-start.sh
index c03a050..531ec30 100755 (executable)
@@ -2,7 +2,7 @@
 
 echo LXC template, args: $@
 
-options=$(getopt -o p:n: -l rootfs:,path:,name: -- "$@")
+options=$(getopt -o p:n: -l rootfs:,path:,name:,ipv4:,ipv4-gateway: -- "$@")
 if [ $? -ne 0 ]; then
     exit 1
 fi
@@ -14,13 +14,14 @@ do
         -p|--path)      path=$2; shift 2;;
         --rootfs)       rootfs=$2; shift 2;;
         -n|--name)      name=$2; shift 2;;
+        --ipv4)         ipv4=$2; shift 2;;
+        --ipv4-gateway) ipv4_gateway=$2; shift 2;;
         --)             shift 1; break ;;
         *)              break ;;
     esac
 done
 
 br_name="virbr-${name}"
-sub_net="103" # TODO from param
 
 # XXX assume rootfs if mounted from iso
 
@@ -40,13 +41,16 @@ lxc.tty = 0
 lxc.mount.auto = proc sys cgroup
 lxc.mount.entry = /var/run/containers/${name}/run var/run none rw,bind 0 0
 
+# create a separate network per container
+# - it forbids traffic sniffing (like macvlan in bridge mode)
+# - it enables traffic controlling from host using iptables
 lxc.network.type = veth
 lxc.network.link =  ${br_name}
 lxc.network.flags = up
 lxc.network.name = eth0
 lxc.network.veth.pair = veth-${name}
-lxc.network.ipv4.gateway = 10.0.${sub_net}.1
-lxc.network.ipv4 = 10.0.${sub_net}.2/24
+lxc.network.ipv4.gateway = ${ipv4_gateway}
+lxc.network.ipv4 = ${ipv4}/24
 
 lxc.hook.pre-start = ${path}/pre-start.sh
 
@@ -55,12 +59,13 @@ lxc.hook.pre-start = ${path}/pre-start.sh
 EOF
 
 # prepare pre start hook
+> ${path}/pre-start.sh
 cat <<EOF >> ${path}/pre-start.sh
 if [ -z "\$(/usr/sbin/brctl show | /bin/grep -P "${br_name}\t")" ]
 then
     /usr/sbin/brctl addbr ${br_name}
     /usr/sbin/brctl setfd ${br_name} 0
-    /sbin/ifconfig ${br_name} 10.0.${sub_net}.1 netmask 255.255.255.0 up
+    /sbin/ifconfig ${br_name} ${ipv4_gateway} netmask 255.255.255.0 up
 fi
 if [ -z "\$(/usr/sbin/iptables -t nat -S | /bin/grep MASQUERADE)" ]
 then
index f91bf5f..1939d51 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "~NAME~",
     "lxcTemplate" : "template.sh",
     "initWithArgs" : [],
+    "ipv4Gateway" : "10.0.~IP~.1",
+    "ipv4" : "10.0.~IP~.2",
     "cpuQuotaForeground" : -1,
     "cpuQuotaBackground" : 1000,
     "privilege" : 10,
index 71185db..ef8ae0f 100644 (file)
@@ -91,7 +91,16 @@ ContainerAdmin::ContainerAdmin(const std::string& containersPath,
         const std::string lxcTemplate = utils::getAbsolutePath(config.lxcTemplate,
                                                                lxcTemplatePrefix);
         LOGI(mId << ": Creating domain from template: " << lxcTemplate);
-        if (!mDom.create(lxcTemplate)) {
+        std::vector<std::string> args;
+        if (!config.ipv4Gateway.empty()) {
+            args.push_back("--ipv4-gateway");
+            args.push_back(config.ipv4Gateway);
+        }
+        if (!config.ipv4.empty()) {
+            args.push_back("--ipv4");
+            args.push_back(config.ipv4);
+        }
+        if (!mDom.create(lxcTemplate, Args(args).getAsCArray())) {
             throw ContainerOperationException("Could not create domain");
         }
     }
index 95030e0..779415d 100644 (file)
@@ -53,6 +53,16 @@ struct ContainerConfig {
     std::vector<std::string> initWithArgs;
 
     /**
+     * IP v4 gateway address
+     */
+    std::string ipv4Gateway;
+
+    /**
+     * IP v4 address
+     */
+    std::string ipv4;
+
+    /**
      * Privilege of the container.
      * The smaller the value the more important the container
      */
@@ -107,6 +117,8 @@ struct ContainerConfig {
         name,
         lxcTemplate,
         initWithArgs,
+        ipv4Gateway,
+        ipv4,
         privilege,
         vt,
         switchToDefaultAfterTimeout,
index 6855a28..bf8d1fc 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-containers-manager-console1-dbus",
     "lxcTemplate" : "minimal-dbus1.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; /usr/bin/dbus-daemon --config-file=@SC_TEST_CONFIG_INSTALL_DIR@/server/ut-containers-manager/ut-dbus.conf --fork; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 20,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index 728522a..73ff1b3 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-containers-manager-console2-dbus",
     "lxcTemplate" : "minimal-dbus2.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; /usr/bin/dbus-daemon --config-file=@SC_TEST_CONFIG_INSTALL_DIR@/server/ut-containers-manager/ut-dbus.conf --fork; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 20,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : false,
index d273e57..c8a0a01 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-containers-manager-console3-dbus",
     "lxcTemplate" : "minimal-dbus3.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; /usr/bin/dbus-daemon --config-file=@SC_TEST_CONFIG_INSTALL_DIR@/server/ut-containers-manager/ut-dbus.conf --fork; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 20,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index aa6c3a9..a529f9f 100644 (file)
@@ -42,6 +42,7 @@ using namespace security_containers::lxc;
 const std::string LXC_PATH = "/tmp/ut-lxc/";
 const std::string DOMAIN_NAME = "ut-domain";
 const std::string TEMPLATE = SC_TEST_LXC_TEMPLATES_INSTALL_DIR "/minimal.sh";
+const char* TEMPLATE_ARGS[] = {NULL};
 
 struct Fixture {
     utils::ScopedDir mLxcDirGuard;
@@ -89,7 +90,7 @@ BOOST_AUTO_TEST_CASE(CreateDestroyTest)
     LxcDomain lxc(LXC_PATH, DOMAIN_NAME);
     BOOST_CHECK(!lxc.isDefined());
 
-    BOOST_CHECK(lxc.create(TEMPLATE));
+    BOOST_CHECK(lxc.create(TEMPLATE, TEMPLATE_ARGS));
 
     BOOST_CHECK(lxc.isDefined());
     BOOST_CHECK_EQUAL(lxc.getConfigItem("lxc.rootfs"), LXC_PATH + DOMAIN_NAME + "/rootfs");
@@ -104,7 +105,7 @@ BOOST_AUTO_TEST_CASE(StartShutdownTest)
 {
     {
         LxcDomain lxc(LXC_PATH, DOMAIN_NAME);
-        BOOST_CHECK(lxc.create(TEMPLATE));
+        BOOST_CHECK(lxc.create(TEMPLATE, TEMPLATE_ARGS));
     }
     LxcDomain lxc(LXC_PATH, DOMAIN_NAME);
     BOOST_CHECK(lxc.getState() == LxcDomain::State::STOPPED);
@@ -127,7 +128,7 @@ BOOST_AUTO_TEST_CASE(StartStopTest)
 {
     {
         LxcDomain lxc(LXC_PATH, DOMAIN_NAME);
-        BOOST_CHECK(lxc.create(TEMPLATE));
+        BOOST_CHECK(lxc.create(TEMPLATE, TEMPLATE_ARGS));
     }
     LxcDomain lxc(LXC_PATH, DOMAIN_NAME);
     BOOST_CHECK(lxc.getState() == LxcDomain::State::STOPPED);
@@ -149,7 +150,7 @@ BOOST_AUTO_TEST_CASE(StartHasStoppedTest)
 {
     {
         LxcDomain lxc(LXC_PATH, DOMAIN_NAME);
-        BOOST_CHECK(lxc.create(TEMPLATE));
+        BOOST_CHECK(lxc.create(TEMPLATE, TEMPLATE_ARGS));
     }
     LxcDomain lxc(LXC_PATH, DOMAIN_NAME);
     BOOST_CHECK(lxc.getState() == LxcDomain::State::STOPPED);
@@ -170,7 +171,7 @@ BOOST_AUTO_TEST_CASE(StartHasStoppedTest)
 BOOST_AUTO_TEST_CASE(FreezeUnfreezeTest)
 {
     LxcDomain lxc(LXC_PATH, DOMAIN_NAME);
-    BOOST_CHECK(lxc.create(TEMPLATE));
+    BOOST_CHECK(lxc.create(TEMPLATE, TEMPLATE_ARGS));
     const char* argv[] = {
         "/bin/sh",
         "-c",
@@ -193,7 +194,7 @@ BOOST_AUTO_TEST_CASE(FreezeUnfreezeTest)
 BOOST_AUTO_TEST_CASE(FreezeStopTest)
 {
     LxcDomain lxc(LXC_PATH, DOMAIN_NAME);
-    BOOST_CHECK(lxc.create(TEMPLATE));
+    BOOST_CHECK(lxc.create(TEMPLATE, TEMPLATE_ARGS));
     const char* argv[] = {
         "/bin/sh",
         "-c",
@@ -216,8 +217,8 @@ BOOST_AUTO_TEST_CASE(FreezeStopTest)
 BOOST_AUTO_TEST_CASE(RepeatTest)
 {
     LxcDomain lxc(LXC_PATH, DOMAIN_NAME);
-    BOOST_CHECK(lxc.create(TEMPLATE));
-    BOOST_CHECK(!lxc.create(TEMPLATE));// forbidden
+    BOOST_CHECK(lxc.create(TEMPLATE, TEMPLATE_ARGS));
+    BOOST_CHECK(!lxc.create(TEMPLATE, TEMPLATE_ARGS));// forbidden
     const char* argv[] = {
         "/bin/sh",
         "-c",
index 22f5810..ffa8652 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-container-admin-test",
     "lxcTemplate" : "minimal.sh",
     "initWithArgs" : ["/foo"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 10,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index 6ff36fe..686dde2 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-container-admin-test",
     "lxcTemplate" : "missing.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 10,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index 7877f8e..307afd5 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-container-admin-test",
     "lxcTemplate" : "minimal.sh",
     "initWithArgs" : ["/bin/sh"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 10,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index a7cf00d..76f4a70 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-container-admin-test",
     "lxcTemplate" : "minimal.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 10,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index c31efc5..2af10da 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-container-test",
     "lxcTemplate" : "/buggy/path",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 10,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index e3eaf9b..f8e60f6 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-container-test-dbus",
     "lxcTemplate" : "minimal-dbus1.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; /usr/bin/dbus-daemon --config-file=@SC_TEST_CONFIG_INSTALL_DIR@/server/ut-container/ut-dbus.conf --fork; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 10,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index ec6bf54..1264669 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-container-test",
     "lxcTemplate" : "minimal.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 10,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index 6855a28..bf8d1fc 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-containers-manager-console1-dbus",
     "lxcTemplate" : "minimal-dbus1.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; /usr/bin/dbus-daemon --config-file=@SC_TEST_CONFIG_INSTALL_DIR@/server/ut-containers-manager/ut-dbus.conf --fork; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 20,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index 2bc7251..1ca1e5f 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-containers-manager-console1",
     "lxcTemplate" : "minimal.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 20,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index 728522a..73ff1b3 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-containers-manager-console2-dbus",
     "lxcTemplate" : "minimal-dbus2.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; /usr/bin/dbus-daemon --config-file=@SC_TEST_CONFIG_INSTALL_DIR@/server/ut-containers-manager/ut-dbus.conf --fork; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 20,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : false,
index 9a0134f..155910b 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-containers-manager-console2",
     "lxcTemplate" : "minimal.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 10,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index d273e57..c8a0a01 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-containers-manager-console3-dbus",
     "lxcTemplate" : "minimal-dbus3.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; /usr/bin/dbus-daemon --config-file=@SC_TEST_CONFIG_INSTALL_DIR@/server/ut-containers-manager/ut-dbus.conf --fork; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 20,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index 6ff8900..a144c79 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-containers-manager-console3",
     "lxcTemplate" : "minimal.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 15,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index d232bc3..995efb4 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-server-container1",
     "lxcTemplate" : "minimal.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 20,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index 650782f..1e9b3b7 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-server-container2",
     "lxcTemplate" : "minimal.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 10,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,
index 0d9f947..47396f5 100644 (file)
@@ -2,6 +2,8 @@
     "name" : "ut-server-container3",
     "lxcTemplate" : "minimal.sh",
     "initWithArgs" : ["/bin/sh", "-c", "trap exit SIGTERM; read"],
+    "ipv4Gateway" : "",
+    "ipv4" : "",
     "privilege" : 15,
     "vt" : -1,
     "switchToDefaultAfterTimeout" : true,