chiark / gitweb /
Revert: split into `revert' and `revert-full-system'
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 30 Jul 2011 10:59:24 +0000 (11:59 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 30 Jul 2011 10:59:24 +0000 (11:59 +0100)
TODO
debian/changelog
doc/README.virtualisation-server
runner/adt-run

diff --git a/TODO b/TODO
index 393b0299a8a2f055ef3d996d4c4b77f6fd0b7828..e06a40e7c66b4df2d6583378f834c472b7cbc7b1 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,6 +1,3 @@
 
 - schroot's snapshots should use dmsetup directly, not lvm ?
     at least there should be non-persistent snapshots
-
-- schroot snapshots share /tmp and /home which is a bit strange
-  need to make 'revert' property more granular
index 6374829e577bfa9461db7feb01dab9311ff98f0d..34a1ffae7b5e518c6e89fe6c735371823c6d39a3 100644 (file)
@@ -5,6 +5,7 @@ autopkgtest (2.0.0) unstable; urgency=low
        that tests which need it have to declare.
   * Incompatible virtualisation server spec changes:
      - print-execute-command replaced by print-{auxverb,shscript}-command.
+     - "revert" capability split into "revert" and "revert-full-system"
   * New adt-virt-schroot for driving schroot.
   * Remove dependency on python in testbed.
   * Spec wording improvements, clarifications, editorial changes, etc.
index 2acb042c9fcd5b0458aa64801ec7d6c55fd04043..6c484ba248ab146a66c38e00064931f5e078f810 100644 (file)
@@ -44,6 +44,22 @@ Protocol
 
   Currently defined capabilities:
 
+    + revert
+       The "revert" command is supported.  The base semantics
+       are that the following aspects of the testbed are reverted:
+               - the set of installed packages
+               - the contents of the root filesystem, BUT
+               - NOT the contents of /home
+               - NOT the contents of /tmp
+               - NOT the set of running processes
+
+    + revert-full-system
+       The "revert" and "close" commands will completely revert the
+       testbed to the state after "open".  This reversion is done
+       with some kind of virtualisation, and includes (without
+       limitation) the contents of all the testbed filesystems, its
+       running processes, network configuration, etc. etc. etc.
+
     + revert
        The testbed will actually revert when it is closed.  If this
        feature is not mentioned then changes to the testbed are
index 1b7f90003cd9ddfcec4d82e341669efaae342d5f..1a70a61c3bf8ad4da84946c9390ef34141f7243e 100755 (executable)
@@ -1016,9 +1016,9 @@ class Restriction_rw_build_tree(Restriction): pass
 class Restriction_build_neeeded(Restriction): pass
 class Restriction_breaks_testbed(Restriction):
  def __init__(r, rname, base):
-       if 'revert' not in testbed.caps:
+       if 'revert-full-system' not in testbed.caps:
                raise Unsupported(f.lno,
-                       'Test breaks testbed but testbed cannot revert')
+       'Test breaks testbed but testbed does not advertise revert-full-system')
 class Restriction_needs_root(Restriction):
  def __init__(r, rname, base):
        if 'root-on-testbed' not in testbed.caps: