579 lines
23 KiB
Diff
579 lines
23 KiB
Diff
From: =?utf-8?q?Rapha=C3=ABl_Hertzog?= <hertzog@debian.org>
|
|
Date: Sun, 16 Aug 2015 15:40:43 +0200
|
|
Subject: Add SESSION_SOURCE and CHROOT_SESSION_SOURCE
|
|
|
|
Origin: upstream
|
|
Applied-Upstream: 1.6.11
|
|
Bug-Debian: http://bugs.debian.org/718127
|
|
---
|
|
man/schroot-setup.5.man | 4 ++++
|
|
sbuild/sbuild-chroot-facet-session-clonable.cc | 2 +-
|
|
sbuild/sbuild-chroot-facet-session.cc | 28 ++++++++++++++++++++-----
|
|
sbuild/sbuild-chroot-facet-session.h | 29 ++++++++++++++++++++++++--
|
|
sbuild/sbuild-chroot.cc | 4 ++++
|
|
sbuild/sbuild-chroot.h | 5 +++--
|
|
sbuild/sbuild-tr1types.h | 2 ++
|
|
test/sbuild-chroot-block-device.cc | 24 +++++++++++++++++++++
|
|
test/sbuild-chroot-btrfs-snapshot.cc | 12 ++++++++---
|
|
test/sbuild-chroot-custom.cc | 1 +
|
|
test/sbuild-chroot-directory.cc | 6 ++++++
|
|
test/sbuild-chroot-file.cc | 5 +++++
|
|
test/sbuild-chroot-loopback.cc | 6 ++++++
|
|
test/sbuild-chroot-lvm-snapshot.cc | 4 ++++
|
|
test/sbuild-chroot-plain.cc | 1 +
|
|
15 files changed, 120 insertions(+), 13 deletions(-)
|
|
|
|
diff --git a/man/schroot-setup.5.man b/man/schroot-setup.5.man
|
|
index 836634e..49ad3b0 100644
|
|
--- a/man/schroot-setup.5.man
|
|
+++ b/man/schroot-setup.5.man
|
|
@@ -93,6 +93,10 @@ Set to \[oq]true\[cq] if a session will be cloned, otherwise \[oq]false\[cq].
|
|
CHROOT_SESSION_PURGE
|
|
Set to \[oq]true\[cq] if a session will be purged, otherwise \[oq]false\[cq].
|
|
.TP
|
|
+CHROOT_SESSION_SOURCE
|
|
+Set to \[oq]true\[cq] if a session will be created from a source chroot,
|
|
+otherwise \[oq]false\[cq].
|
|
+.TP
|
|
CHROOT_TYPE
|
|
The type of the chroot. This is useful for restricting a setup task to
|
|
particular types of chroot (e.g. only block devices or LVM snapshots).
|
|
diff --git a/sbuild/sbuild-chroot-facet-session-clonable.cc b/sbuild/sbuild-chroot-facet-session-clonable.cc
|
|
index b74f14b..ca208b4 100644
|
|
--- a/sbuild/sbuild-chroot-facet-session-clonable.cc
|
|
+++ b/sbuild/sbuild-chroot-facet-session-clonable.cc
|
|
@@ -90,7 +90,7 @@ chroot_facet_session_clonable::clone_session_setup (chroot const& parent,
|
|
clone->remove_facet<chroot_facet_session_clonable>();
|
|
// Disable source cloning.
|
|
clone->remove_facet<chroot_facet_source_clonable>();
|
|
- clone->add_facet(chroot_facet_session::create());
|
|
+ clone->add_facet(chroot_facet_session::create(owner->shared_from_this()));
|
|
|
|
// Disable session, delete aliases.
|
|
chroot_facet_session::ptr psess(clone->get_facet<chroot_facet_session>());
|
|
diff --git a/sbuild/sbuild-chroot-facet-session.cc b/sbuild/sbuild-chroot-facet-session.cc
|
|
index a3114bc..477f4bd 100644
|
|
--- a/sbuild/sbuild-chroot-facet-session.cc
|
|
+++ b/sbuild/sbuild-chroot-facet-session.cc
|
|
@@ -21,7 +21,7 @@
|
|
#include "sbuild-chroot.h"
|
|
#include "sbuild-chroot-config.h"
|
|
#include "sbuild-chroot-facet-session.h"
|
|
-#include "sbuild-chroot-facet-source-clonable.h"
|
|
+#include "sbuild-chroot-facet-source.h"
|
|
#include "sbuild-chroot-plain.h"
|
|
#ifdef SBUILD_FEATURE_LVMSNAP
|
|
#include "sbuild-chroot-lvm-snapshot.h"
|
|
@@ -39,10 +39,11 @@ using boost::format;
|
|
using std::endl;
|
|
using namespace sbuild;
|
|
|
|
-chroot_facet_session::chroot_facet_session ():
|
|
+chroot_facet_session::chroot_facet_session (const chroot::ptr& parent_chroot):
|
|
chroot_facet(),
|
|
original_chroot_name(),
|
|
- selected_chroot_name()
|
|
+ selected_chroot_name(),
|
|
+ parent_chroot(parent_chroot)
|
|
{
|
|
}
|
|
|
|
@@ -53,7 +54,13 @@ chroot_facet_session::~chroot_facet_session ()
|
|
chroot_facet_session::ptr
|
|
chroot_facet_session::create ()
|
|
{
|
|
- return ptr(new chroot_facet_session());
|
|
+ return ptr(new chroot_facet_session(chroot::ptr()));
|
|
+}
|
|
+
|
|
+chroot_facet_session::ptr
|
|
+chroot_facet_session::create (const chroot::ptr& parent_chroot)
|
|
+{
|
|
+ return ptr(new chroot_facet_session(parent_chroot));
|
|
}
|
|
|
|
chroot_facet::ptr
|
|
@@ -97,6 +104,12 @@ chroot_facet_session::set_selected_name (std::string const& name)
|
|
this->selected_chroot_name = shortname;
|
|
}
|
|
|
|
+const chroot::ptr&
|
|
+chroot_facet_session::get_parent_chroot() const
|
|
+{
|
|
+ return parent_chroot;
|
|
+}
|
|
+
|
|
void
|
|
chroot_facet_session::setup_env (chroot const& chroot,
|
|
environment& env) const
|
|
@@ -113,7 +126,12 @@ chroot_facet_session::setup_env (chroot const& chroot,
|
|
sbuild::chroot::session_flags
|
|
chroot_facet_session::get_session_flags (chroot const& chroot) const
|
|
{
|
|
- return chroot::SESSION_NOFLAGS;
|
|
+ sbuild::chroot::session_flags flags = sbuild::chroot::SESSION_NOFLAGS;
|
|
+
|
|
+ if (parent_chroot && parent_chroot->get_facet<chroot_facet_source>())
|
|
+ flags = flags | sbuild::chroot::SESSION_SOURCE;
|
|
+
|
|
+ return flags;
|
|
}
|
|
|
|
void
|
|
diff --git a/sbuild/sbuild-chroot-facet-session.h b/sbuild/sbuild-chroot-facet-session.h
|
|
index bc90738..49d8f34 100644
|
|
--- a/sbuild/sbuild-chroot-facet-session.h
|
|
+++ b/sbuild/sbuild-chroot-facet-session.h
|
|
@@ -42,8 +42,12 @@ namespace sbuild
|
|
typedef std::shared_ptr<const chroot_facet_session> const_ptr;
|
|
|
|
private:
|
|
- /// The constructor.
|
|
- chroot_facet_session ();
|
|
+ /** The constructor.
|
|
+ *
|
|
+ * @param parent_chroot the chroot from which this session was
|
|
+ * cloned.
|
|
+ */
|
|
+ chroot_facet_session (const chroot::ptr& parent_chroot);
|
|
|
|
public:
|
|
/// The destructor.
|
|
@@ -57,6 +61,16 @@ namespace sbuild
|
|
static ptr
|
|
create ();
|
|
|
|
+ /**
|
|
+ * Create a chroot facet.
|
|
+ *
|
|
+ * @param parent_chroot the chroot from which this session was
|
|
+ * cloned.
|
|
+ * @returns a shared_ptr to the new chroot facet.
|
|
+ */
|
|
+ static ptr
|
|
+ create (const chroot::ptr& parent_chroot);
|
|
+
|
|
virtual chroot_facet::ptr
|
|
clone () const;
|
|
|
|
@@ -96,6 +110,15 @@ namespace sbuild
|
|
void
|
|
set_selected_name (std::string const& name);
|
|
|
|
+ /**
|
|
+ * Get parent chroot.
|
|
+ *
|
|
+ * @returns a pointer to the chroot; may be null if no parent
|
|
+ * exists.
|
|
+ */
|
|
+ const chroot::ptr&
|
|
+ get_parent_chroot() const;
|
|
+
|
|
virtual void
|
|
setup_env (chroot const& chroot,
|
|
environment& env) const;
|
|
@@ -121,6 +144,8 @@ namespace sbuild
|
|
std::string original_chroot_name;
|
|
/// Selected chroot name.
|
|
std::string selected_chroot_name;
|
|
+ /// Parent chroot.
|
|
+ const chroot::ptr parent_chroot;
|
|
};
|
|
|
|
}
|
|
diff --git a/sbuild/sbuild-chroot.cc b/sbuild/sbuild-chroot.cc
|
|
index 6ec7088..8f31e9f 100644
|
|
--- a/sbuild/sbuild-chroot.cc
|
|
+++ b/sbuild/sbuild-chroot.cc
|
|
@@ -105,6 +105,7 @@ error<sbuild::chroot::error_code>::error_strings
|
|
init_errors + (sizeof(init_errors) / sizeof(init_errors[0])));
|
|
|
|
sbuild::chroot::chroot ():
|
|
+ std::enable_shared_from_this<chroot>(),
|
|
name(),
|
|
description(),
|
|
users(),
|
|
@@ -132,6 +133,7 @@ sbuild::chroot::chroot ():
|
|
}
|
|
|
|
sbuild::chroot::chroot (const chroot& rhs):
|
|
+ std::enable_shared_from_this<chroot>(),
|
|
name(rhs.name),
|
|
description(rhs.description),
|
|
users(rhs.users),
|
|
@@ -564,6 +566,8 @@ sbuild::chroot::setup_env (chroot const& chroot,
|
|
static_cast<bool>(chroot.get_session_flags() & SESSION_CLONE));
|
|
env.add("CHROOT_SESSION_PURGE",
|
|
static_cast<bool>(chroot.get_session_flags() & SESSION_PURGE));
|
|
+ env.add("CHROOT_SESSION_SOURCE",
|
|
+ static_cast<bool>(chroot.get_session_flags() & SESSION_SOURCE));
|
|
}
|
|
|
|
void
|
|
diff --git a/sbuild/sbuild-chroot.h b/sbuild/sbuild-chroot.h
|
|
index e3f1cf7..ba7271c 100644
|
|
--- a/sbuild/sbuild-chroot.h
|
|
+++ b/sbuild/sbuild-chroot.h
|
|
@@ -42,7 +42,7 @@ namespace sbuild
|
|
* configuration file, and may be initialised directly from an open
|
|
* keyfile.
|
|
*/
|
|
- class chroot
|
|
+ class chroot : public std::enable_shared_from_this<chroot>
|
|
{
|
|
public:
|
|
/// Type of setup to perform.
|
|
@@ -59,7 +59,8 @@ namespace sbuild
|
|
SESSION_NOFLAGS = 0, ///< No flags are set.
|
|
SESSION_CREATE = 1 << 0, ///< The chroot supports session creation.
|
|
SESSION_CLONE = 1 << 1, ///< The chroot supports cloning.
|
|
- SESSION_PURGE = 1 << 2 ///< The chroot should be purged.
|
|
+ SESSION_PURGE = 1 << 2, ///< The chroot should be purged.
|
|
+ SESSION_SOURCE = 1 << 3 ///< The chroot is a source chroot.
|
|
};
|
|
|
|
/// Message verbosity.
|
|
diff --git a/sbuild/sbuild-tr1types.h b/sbuild/sbuild-tr1types.h
|
|
index 2739a50..a3b3191 100644
|
|
--- a/sbuild/sbuild-tr1types.h
|
|
+++ b/sbuild/sbuild-tr1types.h
|
|
@@ -39,6 +39,7 @@ namespace std {
|
|
using std::tr1::static_pointer_cast;
|
|
using std::tr1::const_pointer_cast;
|
|
using std::tr1::dynamic_pointer_cast;
|
|
+ using std::tr1::enable_shared_from_this;
|
|
}
|
|
# elif HAVE_BOOST_SHARED_PTR_HPP
|
|
# include <boost/shared_ptr.hpp>
|
|
@@ -48,6 +49,7 @@ namespace std {
|
|
using boost::static_pointer_cast;
|
|
using boost::const_pointer_cast;
|
|
using boost::dynamic_pointer_cast;
|
|
+ using boost::enable_shared_from_this;
|
|
}
|
|
# else
|
|
# error A shared_ptr implementation is not available
|
|
diff --git a/test/sbuild-chroot-block-device.cc b/test/sbuild-chroot-block-device.cc
|
|
index addcf97..ce16f37 100644
|
|
--- a/test/sbuild-chroot-block-device.cc
|
|
+++ b/test/sbuild-chroot-block-device.cc
|
|
@@ -152,6 +152,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
#ifdef SBUILD_FEATURE_UNION
|
|
expected.add("CHROOT_UNION_TYPE", "none");
|
|
#endif // SBUILD_FEATURE_UNION
|
|
@@ -169,6 +170,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
expected.add("CHROOT_MOUNT_DEVICE", "/dev/testdev");
|
|
#ifdef SBUILD_FEATURE_UNION
|
|
expected.add("CHROOT_UNION_TYPE", "none");
|
|
@@ -184,6 +186,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "true");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
expected.add("CHROOT_UNION_TYPE", "aufs");
|
|
expected.add("CHROOT_UNION_MOUNT_OPTIONS", "union-mount-options");
|
|
expected.add("CHROOT_UNION_OVERLAY_DIRECTORY", "/overlay");
|
|
@@ -202,6 +205,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "true");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
expected.add("CHROOT_MOUNT_DEVICE", "/dev/testdev");
|
|
expected.add("CHROOT_UNION_TYPE", "aufs");
|
|
expected.add("CHROOT_UNION_MOUNT_OPTIONS", "union-mount-options");
|
|
@@ -220,9 +224,29 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
|
|
test_chroot_base<chroot_block_device>::test_setup_env(source_union, expected);
|
|
}
|
|
+
|
|
+ void test_setup_env_session_source_union()
|
|
+ {
|
|
+ sbuild::environment expected;
|
|
+ setup_env_gen(expected);
|
|
+ expected.add("SESSION_ID", "test-union-session-name");
|
|
+ expected.add("CHROOT_ALIAS", "test-union-session-name");
|
|
+ expected.add("CHROOT_DESCRIPTION", chroot->get_description() + ' ' + _("(source chroot)") + ' ' + _("(session chroot)"));
|
|
+ expected.add("CHROOT_SESSION_CLONE", "false");
|
|
+ expected.add("CHROOT_SESSION_CREATE", "false");
|
|
+ expected.add("CHROOT_SESSION_PURGE", "true");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "true");
|
|
+ expected.add("CHROOT_MOUNT_DEVICE", "/dev/testdev");
|
|
+ expected.add("CHROOT_UNION_TYPE", "aufs");
|
|
+ expected.add("CHROOT_UNION_MOUNT_OPTIONS", "union-mount-options");
|
|
+ expected.add("CHROOT_UNION_OVERLAY_DIRECTORY", "/overlay/test-union-session-name");
|
|
+ expected.add("CHROOT_UNION_UNDERLAY_DIRECTORY", "/underlay/test-union-session-name");
|
|
+ test_chroot_base<chroot_block_device>::test_setup_env(source_union, expected);
|
|
+ }
|
|
#endif // SBUILD_FEATURE_UNION
|
|
|
|
void setup_keyfile_block(sbuild::keyfile &expected, std::string group)
|
|
diff --git a/test/sbuild-chroot-btrfs-snapshot.cc b/test/sbuild-chroot-btrfs-snapshot.cc
|
|
index dc29525..195ccb5 100644
|
|
--- a/test/sbuild-chroot-btrfs-snapshot.cc
|
|
+++ b/test/sbuild-chroot-btrfs-snapshot.cc
|
|
@@ -166,6 +166,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "true");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
|
|
test_chroot_base<chroot_btrfs_snapshot>::test_setup_env(chroot, expected);
|
|
}
|
|
@@ -186,6 +187,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "true");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
|
|
test_chroot_base<chroot_btrfs_snapshot>::test_setup_env(session, expected);
|
|
}
|
|
@@ -201,6 +203,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
|
|
test_chroot_base<chroot_btrfs_snapshot>::test_setup_env(source, expected);
|
|
}
|
|
@@ -210,14 +213,17 @@ public:
|
|
sbuild::environment expected;
|
|
setup_env_gen(expected);
|
|
expected.add("CHROOT_TYPE", "directory");
|
|
+ expected.add("SESSION_ID", "test-session-name");
|
|
expected.add("CHROOT_NAME", "test-name");
|
|
- expected.add("CHROOT_DESCRIPTION", chroot->get_description() + ' ' + _("(source chroot)"));
|
|
+ expected.add("CHROOT_ALIAS", "test-session-name");
|
|
+ expected.add("CHROOT_DESCRIPTION", chroot->get_description() + ' ' + _("(source chroot)") + ' ' + _("(session chroot)"));
|
|
expected.add("CHROOT_DIRECTORY", "/srv/chroot/sid");
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
- expected.add("CHROOT_SESSION_CREATE", "true");
|
|
+ expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "true");
|
|
|
|
- test_chroot_base<chroot_btrfs_snapshot>::test_setup_env(source, expected);
|
|
+ test_chroot_base<chroot_btrfs_snapshot>::test_setup_env(session_source, expected);
|
|
}
|
|
|
|
void setup_keyfile_btrfs(sbuild::keyfile &expected, std::string group)
|
|
diff --git a/test/sbuild-chroot-custom.cc b/test/sbuild-chroot-custom.cc
|
|
index 971f1ef..7b56bda 100644
|
|
--- a/test/sbuild-chroot-custom.cc
|
|
+++ b/test/sbuild-chroot-custom.cc
|
|
@@ -111,6 +111,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
expected.add("CUSTOM_DIRECTORY", "/srv/chroots/sid");
|
|
expected.add("CUSTOM_OPTIONS", "foobar");
|
|
}
|
|
diff --git a/test/sbuild-chroot-directory.cc b/test/sbuild-chroot-directory.cc
|
|
index 346fd96..470a082 100644
|
|
--- a/test/sbuild-chroot-directory.cc
|
|
+++ b/test/sbuild-chroot-directory.cc
|
|
@@ -135,6 +135,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
#ifdef SBUILD_FEATURE_UNION
|
|
expected.add("CHROOT_UNION_TYPE", "none");
|
|
#endif // SBUILD_FEATURE_UNION
|
|
@@ -153,6 +154,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
#ifdef SBUILD_FEATURE_UNION
|
|
expected.add("CHROOT_UNION_TYPE", "none");
|
|
#endif // SBUILD_FEATURE_UNION
|
|
@@ -169,6 +171,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "true");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
expected.add("CHROOT_UNION_TYPE", "aufs");
|
|
expected.add("CHROOT_UNION_MOUNT_OPTIONS", "union-mount-options");
|
|
expected.add("CHROOT_UNION_OVERLAY_DIRECTORY", "/overlay");
|
|
@@ -188,6 +191,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "true");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
expected.add("CHROOT_UNION_TYPE", "aufs");
|
|
expected.add("CHROOT_UNION_MOUNT_OPTIONS", "union-mount-options");
|
|
expected.add("CHROOT_UNION_OVERLAY_DIRECTORY", "/overlay/test-union-session-name");
|
|
@@ -205,6 +209,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
|
|
test_chroot_base<chroot_directory>::test_setup_env(source_union, expected);
|
|
}
|
|
@@ -220,6 +225,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "true");
|
|
|
|
test_chroot_base<chroot_directory>::test_setup_env(session_source_union, expected);
|
|
}
|
|
diff --git a/test/sbuild-chroot-file.cc b/test/sbuild-chroot-file.cc
|
|
index 5949920..1f834b9 100644
|
|
--- a/test/sbuild-chroot-file.cc
|
|
+++ b/test/sbuild-chroot-file.cc
|
|
@@ -155,6 +155,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "true");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
|
|
test_chroot_base<chroot_file>::test_setup_env(chroot, expected);
|
|
}
|
|
@@ -167,6 +168,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "true");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
|
|
test_chroot_base<chroot_file>::test_setup_env(chroot, expected);
|
|
}
|
|
@@ -182,6 +184,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "true");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
|
|
test_chroot_base<chroot_file>::test_setup_env(session, expected);
|
|
}
|
|
@@ -195,6 +198,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
|
|
test_chroot_base<chroot_file>::test_setup_env(source, expected);
|
|
}
|
|
@@ -210,6 +214,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "true");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "true");
|
|
|
|
test_chroot_base<chroot_file>::test_setup_env(session_source, expected);
|
|
}
|
|
diff --git a/test/sbuild-chroot-loopback.cc b/test/sbuild-chroot-loopback.cc
|
|
index 8517dfc..5f04dff 100644
|
|
--- a/test/sbuild-chroot-loopback.cc
|
|
+++ b/test/sbuild-chroot-loopback.cc
|
|
@@ -151,6 +151,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
#ifdef SBUILD_FEATURE_UNION
|
|
expected.add("CHROOT_UNION_TYPE", "none");
|
|
#endif // SBUILD_FEATURE_UNION
|
|
@@ -169,6 +170,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
expected.add("CHROOT_MOUNT_DEVICE", loopback_file);
|
|
|
|
#ifdef SBUILD_FEATURE_UNION
|
|
@@ -187,6 +189,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "true");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
expected.add("CHROOT_UNION_TYPE", "aufs");
|
|
expected.add("CHROOT_UNION_MOUNT_OPTIONS", "union-mount-options");
|
|
expected.add("CHROOT_UNION_OVERLAY_DIRECTORY", "/overlay");
|
|
@@ -206,6 +209,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "true");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
expected.add("CHROOT_MOUNT_DEVICE", loopback_file);
|
|
expected.add("CHROOT_UNION_TYPE", "aufs");
|
|
expected.add("CHROOT_UNION_MOUNT_OPTIONS", "union-mount-options");
|
|
@@ -224,6 +228,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
|
|
test_chroot_base<chroot_loopback>::test_setup_env(source_union, expected);
|
|
}
|
|
@@ -241,6 +246,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "true");
|
|
|
|
test_chroot_base<chroot_loopback>::test_setup_env(session_source_union, expected);
|
|
}
|
|
diff --git a/test/sbuild-chroot-lvm-snapshot.cc b/test/sbuild-chroot-lvm-snapshot.cc
|
|
index 632fa86..878478a 100644
|
|
--- a/test/sbuild-chroot-lvm-snapshot.cc
|
|
+++ b/test/sbuild-chroot-lvm-snapshot.cc
|
|
@@ -139,6 +139,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "true");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
|
|
test_chroot_base<chroot_lvm_snapshot>::test_setup_env(chroot, expected);
|
|
}
|
|
@@ -160,6 +161,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "true");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
|
|
test_chroot_base<chroot_lvm_snapshot>::test_setup_env(session, expected);
|
|
}
|
|
@@ -174,6 +176,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "true");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
|
|
test_chroot_base<chroot_lvm_snapshot>::test_setup_env(source, expected);
|
|
}
|
|
@@ -191,6 +194,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "true");
|
|
|
|
test_chroot_base<chroot_lvm_snapshot>::test_setup_env(session_source, expected);
|
|
}
|
|
diff --git a/test/sbuild-chroot-plain.cc b/test/sbuild-chroot-plain.cc
|
|
index 8f0d249..4de2c00 100644
|
|
--- a/test/sbuild-chroot-plain.cc
|
|
+++ b/test/sbuild-chroot-plain.cc
|
|
@@ -104,6 +104,7 @@ public:
|
|
expected.add("CHROOT_SESSION_CLONE", "false");
|
|
expected.add("CHROOT_SESSION_CREATE", "false");
|
|
expected.add("CHROOT_SESSION_PURGE", "false");
|
|
+ expected.add("CHROOT_SESSION_SOURCE", "false");
|
|
|
|
test_chroot_base<chroot_plain>::test_setup_env(chroot, expected);
|
|
}
|