From: Ian Jackson Date: Sat, 30 Jul 2011 10:59:24 +0000 (+0100) Subject: Revert: split into `revert' and `revert-full-system' X-Git-Tag: debian/2.0.0~13 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=076b29c1c4aa4ab6108e05adea212364dda9af9a;hp=9e2fe40ac798e7bbdb4c6676bb239f5062757dd0;p=autopkgtest.git Revert: split into `revert' and `revert-full-system' --- diff --git a/TODO b/TODO index 393b029..e06a40e 100644 --- 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 diff --git a/debian/changelog b/debian/changelog index 6374829..34a1ffa 100644 --- a/debian/changelog +++ b/debian/changelog @@ -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. diff --git a/doc/README.virtualisation-server b/doc/README.virtualisation-server index 2acb042..6c484ba 100644 --- a/doc/README.virtualisation-server +++ b/doc/README.virtualisation-server @@ -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 diff --git a/runner/adt-run b/runner/adt-run index 1b7f900..1a70a61 100755 --- a/runner/adt-run +++ b/runner/adt-run @@ -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: