{
"name" : "ut-containers-manager-console1-dbus",
- "lxcTemplate" : "minimal-dbus1.sh",
+ "lxcTemplate" : "minimal-dbus.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" : "",
"enableDbusIntegration" : true,
"cpuQuotaForeground" : -1,
"cpuQuotaBackground" : 1000,
- "runMountPoint" : "/tmp/ut-run1",
+ "runMountPoint" : "/tmp/ut-run/ut-containers-manager-console1-dbus",
"permittedToSend" : [ "/tmp/.*", "/etc/secret2" ],
"permittedToRecv" : [ "/tmp/.*" ]
}
{
"name" : "ut-containers-manager-console2-dbus",
- "lxcTemplate" : "minimal-dbus2.sh",
+ "lxcTemplate" : "minimal-dbus.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" : "",
"enableDbusIntegration" : true,
"cpuQuotaForeground" : -1,
"cpuQuotaBackground" : 1000,
- "runMountPoint" : "/tmp/ut-run2",
+ "runMountPoint" : "/tmp/ut-run/ut-containers-manager-console2-dbus",
"permittedToSend" : [ "/tmp/.*" ],
"permittedToRecv" : [ "/tmp/.*", "/etc/secret1" ]
}
{
"name" : "ut-containers-manager-console3-dbus",
- "lxcTemplate" : "minimal-dbus3.sh",
+ "lxcTemplate" : "minimal-dbus.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" : "",
"enableDbusIntegration" : true,
"cpuQuotaForeground" : -1,
"cpuQuotaBackground" : 1000,
- "runMountPoint" : "/tmp/ut-run3",
+ "runMountPoint" : "/tmp/ut-run/ut-containers-manager-console3-dbus",
"permittedToSend" : [ "/tmp/.*" ],
"permittedToRecv" : [ "/tmp/.*" ]
}
struct Fixture {
Loop loop;
utils::ScopedDir mContainersPathGuard;
- utils::ScopedDir mRun1Guard;
- utils::ScopedDir mRun2Guard;
- utils::ScopedDir mRun3Guard;
+ utils::ScopedDir mRunGuard;
ContainersManager cm;
Fixture()
: mContainersPathGuard(CONTAINERS_PATH)
- , mRun1Guard("/tmp/ut-run1")
- , mRun2Guard("/tmp/ut-run2")
- , mRun3Guard("/tmp/ut-run3")
+ , mRunGuard("/tmp/ut-run")
, cm(TEST_DBUS_CONFIG_PATH)
{
cm.startAll();
const std::map<std::string, std::string> EXPECTED_DBUSES_STARTED = {
{
"ut-containers-manager-console1-dbus",
- "unix:path=/tmp/ut-run1/dbus/system_bus_socket"
+ "unix:path=/tmp/ut-run/ut-containers-manager-console1-dbus/dbus/system_bus_socket"
},
{
"ut-containers-manager-console2-dbus",
- "unix:path=/tmp/ut-run2/dbus/system_bus_socket"
+ "unix:path=/tmp/ut-run/ut-containers-manager-console2-dbus/dbus/system_bus_socket"
},
{
"ut-containers-manager-console3-dbus",
- "unix:path=/tmp/ut-run3/dbus/system_bus_socket"
+ "unix:path=/tmp/ut-run/ut-containers-manager-console3-dbus/dbus/system_bus_socket"
}
};
lxc.mount.entry = /sbin sbin none ro,bind 0 0
lxc.mount.entry = /usr usr none ro,rbind 0 0
lxc.mount.entry = /opt opt none ro,rbind 0 0
-lxc.mount.entry = /tmp/ut-run1 var/run none rw,bind 0 0
+lxc.mount.entry = /tmp/ut-run/${name} var/run none rw,bind 0 0
EOF
if [ "$(uname -m)" = "x86_64" ]; then
+++ /dev/null
-#!/bin/bash
-
-echo UnitTest 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
-
-# Prepare container rootfs
-ROOTFS_DIRS="\
-${rootfs}/bin \
-${rootfs}/dev \
-${rootfs}/dev/pts \
-${rootfs}/etc \
-${rootfs}/home \
-${rootfs}/lib \
-${rootfs}/lib64 \
-${rootfs}/proc \
-${rootfs}/root \
-${rootfs}/run \
-${rootfs}/sbin \
-${rootfs}/sys \
-${rootfs}/tmp \
-${rootfs}/usr \
-${rootfs}/opt \
-${rootfs}/var \
-${rootfs}/var/run
-"
-/bin/mkdir ${ROOTFS_DIRS}
-
-# 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.haltsignal = SIGTERM
-
-lxc.pts = 256
-lxc.tty = 0
-
-lxc.cgroup.devices.deny = a
-
-lxc.mount.auto = proc sys cgroup
-lxc.mount.entry = /bin bin none ro,bind 0 0
-lxc.mount.entry = /etc etc none ro,bind 0 0
-lxc.mount.entry = /lib lib none ro,bind 0 0
-lxc.mount.entry = /sbin sbin none ro,bind 0 0
-lxc.mount.entry = /usr usr none ro,rbind 0 0
-lxc.mount.entry = /opt opt none ro,rbind 0 0
-lxc.mount.entry = /tmp/ut-run2 var/run none rw,bind 0 0
-EOF
-
-if [ "$(uname -m)" = "x86_64" ]; then
-cat <<EOF >> $path/config
-lxc.mount.entry = /lib64 lib64 none ro,bind 0 0
-EOF
-fi
-
+++ /dev/null
-#!/bin/bash
-
-echo UnitTest 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
-
-# Prepare container rootfs
-ROOTFS_DIRS="\
-${rootfs}/bin \
-${rootfs}/dev \
-${rootfs}/dev/pts \
-${rootfs}/etc \
-${rootfs}/home \
-${rootfs}/lib \
-${rootfs}/lib64 \
-${rootfs}/proc \
-${rootfs}/root \
-${rootfs}/run \
-${rootfs}/sbin \
-${rootfs}/sys \
-${rootfs}/tmp \
-${rootfs}/usr \
-${rootfs}/opt \
-${rootfs}/var \
-${rootfs}/var/run
-"
-/bin/mkdir ${ROOTFS_DIRS}
-
-# 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.haltsignal = SIGTERM
-
-lxc.pts = 256
-lxc.tty = 0
-
-lxc.cgroup.devices.deny = a
-
-lxc.mount.auto = proc sys cgroup
-lxc.mount.entry = /bin bin none ro,bind 0 0
-lxc.mount.entry = /etc etc none ro,bind 0 0
-lxc.mount.entry = /lib lib none ro,bind 0 0
-lxc.mount.entry = /sbin sbin none ro,bind 0 0
-lxc.mount.entry = /usr usr none ro,rbind 0 0
-lxc.mount.entry = /opt opt none ro,rbind 0 0
-lxc.mount.entry = /tmp/ut-run3 var/run none rw,bind 0 0
-EOF
-
-if [ "$(uname -m)" = "x86_64" ]; then
-cat <<EOF >> $path/config
-lxc.mount.entry = /lib64 lib64 none ro,bind 0 0
-EOF
-fi
-
{
"name" : "ut-container-test-dbus",
- "lxcTemplate" : "minimal-dbus1.sh",
+ "lxcTemplate" : "minimal-dbus.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" : "",
"enableDbusIntegration" : true,
"cpuQuotaForeground" : -1,
"cpuQuotaBackground" : 1000,
- "runMountPoint" : "/tmp/ut-run1",
+ "runMountPoint" : "/tmp/ut-run/ut-container-test-dbus",
"permittedToSend" : [],
"permittedToRecv" : []
}
{
"name" : "ut-containers-manager-console1-dbus",
- "lxcTemplate" : "minimal-dbus1.sh",
+ "lxcTemplate" : "minimal-dbus.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" : "",
"enableDbusIntegration" : true,
"cpuQuotaForeground" : -1,
"cpuQuotaBackground" : 1000,
- "runMountPoint" : "/tmp/ut-run1",
+ "runMountPoint" : "/tmp/ut-run/ut-containers-manager-console1-dbus",
"permittedToSend" : [ "/tmp/.*", "/etc/secret2" ],
"permittedToRecv" : [ "/tmp/.*" ]
}
{
"name" : "ut-containers-manager-console2-dbus",
- "lxcTemplate" : "minimal-dbus2.sh",
+ "lxcTemplate" : "minimal-dbus.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" : "",
"enableDbusIntegration" : true,
"cpuQuotaForeground" : -1,
"cpuQuotaBackground" : 1000,
- "runMountPoint" : "/tmp/ut-run2",
+ "runMountPoint" : "/tmp/ut-run/ut-containers-manager-console2-dbus",
"permittedToSend" : [ "/tmp/.*" ],
"permittedToRecv" : [ "/tmp/.*", "/etc/secret1" ]
}
{
"name" : "ut-containers-manager-console3-dbus",
- "lxcTemplate" : "minimal-dbus3.sh",
+ "lxcTemplate" : "minimal-dbus.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" : "",
"enableDbusIntegration" : true,
"cpuQuotaForeground" : -1,
"cpuQuotaBackground" : 1000,
- "runMountPoint" : "/tmp/ut-run3",
+ "runMountPoint" : "/tmp/ut-run/ut-containers-manager-console3-dbus",
"permittedToSend" : [ "/tmp/.*" ],
"permittedToRecv" : [ "/tmp/.*" ]
}
{
"name" : "~NAME~",
- "lxcTemplate" : "minimal-dbus1.sh",
+ "lxcTemplate" : "minimal-dbus.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" : "",
"enableDbusIntegration" : true,
"cpuQuotaForeground" : -1,
"cpuQuotaBackground" : 1000,
- "runMountPoint" : "/tmp/ut-run1",
+ "runMountPoint" : "/tmp/ut-run/~NAME~",
"permittedToSend" : [ "/tmp/.*" ],
"permittedToRecv" : [ "/tmp/.*" ]
}
BOOST_AUTO_TEST_CASE(DbusConnectionTest)
{
- mRunGuard.create("/tmp/ut-run1"); // the same path as in lxc template
+ mRunGuard.create("/tmp/ut-run"); // the same path as in lxc template
auto c = create(TEST_DBUS_CONFIG_PATH);
c->start();
if (isHost()) {
return "unix:path=/var/run/dbus/system_bus_socket";
}
- return "unix:path=/tmp/ut-run" + std::to_string(mId) +
- "/dbus/system_bus_socket";
+ return "unix:path=/tmp/ut-run/ut-containers-manager-console" + std::to_string(mId) +
+ "-dbus/dbus/system_bus_socket";
}
};
security_containers::utils::ScopedGlibLoop mLoop;
utils::ScopedDir mContainersPathGuard;
- utils::ScopedDir mRun1Guard;
- utils::ScopedDir mRun2Guard;
- utils::ScopedDir mRun3Guard;
+ utils::ScopedDir mRunGuard;
Fixture()
: mContainersPathGuard(CONTAINERS_PATH)
- , mRun1Guard("/tmp/ut-run1")
- , mRun2Guard("/tmp/ut-run2")
- , mRun3Guard("/tmp/ut-run3")
+ , mRunGuard("/tmp/ut-run")
{}
};
const DbusAccessory::Dbuses EXPECTED_DBUSES_STARTED = {
{"ut-containers-manager-console1-dbus",
- "unix:path=/tmp/ut-run1/dbus/system_bus_socket"},
+ "unix:path=/tmp/ut-run/ut-containers-manager-console1-dbus/dbus/system_bus_socket"},
{"ut-containers-manager-console2-dbus",
- "unix:path=/tmp/ut-run2/dbus/system_bus_socket"},
+ "unix:path=/tmp/ut-run/ut-containers-manager-console2-dbus/dbus/system_bus_socket"},
{"ut-containers-manager-console3-dbus",
- "unix:path=/tmp/ut-run3/dbus/system_bus_socket"}};
+ "unix:path=/tmp/ut-run/ut-containers-manager-console3-dbus/dbus/system_bus_socket"}};
} // namespace
BOOST_AUTO_TEST_CASE(GetContainerDbusesTest)