[Qa-jenkins-scm] [jenkins.debian.net] 05/11: lvc: discard only outdated snapshots
Holger Levsen
holger at layer-acht.org
Fri Jun 3 00:48:10 UTC 2016
This is an automated email from the git hooks/post-receive script.
holger pushed a commit to branch master
in repository jenkins.debian.net.
commit 5e6bee5e9acfea7242298f4cb5e7e6a5a49a423c
Author: Philip Hands <phil at hands.com>
Date: Thu Jun 2 17:23:50 2016 +0200
lvc: discard only outdated snapshots
---
bin/lvc.sh | 18 ++++++++++--------
cucumber/features/step_definitions/snapshots.rb | 2 +-
hosts/jenkins-test-vm/etc/sudoers.d/jenkins | 2 +-
hosts/jenkins/etc/sudoers.d/jenkins | 2 +-
hosts/profitbricks-build10-amd64/etc/sudoers.d/jenkins | 2 +-
5 files changed, 14 insertions(+), 12 deletions(-)
diff --git a/bin/lvc.sh b/bin/lvc.sh
index 902ace0..6f801e6 100755
--- a/bin/lvc.sh
+++ b/bin/lvc.sh
@@ -39,10 +39,15 @@ fetch_if_newer() {
fi
}
-discard_snapshots() {
- domain=$1
- for snap in $(sudo /usr/bin/virsh snapshot-list $domain --name) ; do
+discard_stale_snapshots() {
+ domain=$1
+ netboot=$2
+
+ sudo /usr/bin/virsh -q snapshot-list $domain | \
+ while read snap date time tz state ; do
+ if [ "$(find /srv/jenkins/cucumber /srv/jenkins/bin/lvc.sh $netboot -newermt "$date $time $tz" -print -quit)" ] ; then
sudo /usr/bin/virsh snapshot-delete $domain $snap
+ fi
done
}
@@ -59,10 +64,7 @@ mkdir -p $RESULTS
mkdir -p $WORKSPACE/DebianToasterStorage
-# FIXME this should discover the 'target' bit of the path, probably via: virsh vol-list
-if [ ! -e "$WORKSPACE/DebianToasterStorage/target" ] ; then
- discard_snapshots DebianToaster
-fi
+discard_stale_snapshots DebianToaster $NETBOOT
trap cleanup_all INT TERM EXIT
@@ -117,7 +119,7 @@ fi
echo "Debug log available at runtime at https://jenkins.debian.net/view/lvc/job/$JOB_NAME/ws/results/debug.log"
-/srv/jenkins/cucumber/bin/run_test_suite --capture-all --vnc-server-only --iso $IMAGE --tmpdir $PWD --old-iso $IMAGE -- --format pretty /srv/jenkins/cucumber/features/step_definitions /srv/jenkins/cucumber/features/support "${@}"
+/srv/jenkins/cucumber/bin/run_test_suite --capture-all --keep-snapshots --vnc-server-only --iso $IMAGE --tmpdir $PWD --old-iso $IMAGE -- --format pretty /srv/jenkins/cucumber/features/step_definitions /srv/jenkins/cucumber/features/support "${@}"
cleanup_all
diff --git a/cucumber/features/step_definitions/snapshots.rb b/cucumber/features/step_definitions/snapshots.rb
index 0f4b49a..bbd66d1 100644
--- a/cucumber/features/step_definitions/snapshots.rb
+++ b/cucumber/features/step_definitions/snapshots.rb
@@ -26,7 +26,7 @@ def checkpoints
['minimal', 'non-GUI', 'Gnome', 'XFCE', 'LXDE', 'KDE'].each do |de|
cp["debian-#{m}-#{de}-install"] = {
- :temporary => 'XFCE' != de,
+ #:temporary => 'XFCE' != de,
:description => "I install a #{de} Debian system, in #{m} mode",
:parent_checkpoint => "boot-d-i-#{m}-to-tasksel",
:steps => [
diff --git a/hosts/jenkins-test-vm/etc/sudoers.d/jenkins b/hosts/jenkins-test-vm/etc/sudoers.d/jenkins
index 1f45753..901bcf4 100644
--- a/hosts/jenkins-test-vm/etc/sudoers.d/jenkins
+++ b/hosts/jenkins-test-vm/etc/sudoers.d/jenkins
@@ -28,7 +28,7 @@ jenkins ALL= \
/usr/bin/qemu-system-x86_64 *, \
/usr/bin/qemu-img *, \
/sbin/lvcreate *, /sbin/lvremove *, \
- /usr/bin/virsh snapshot-list *, /usr/bin/virsh snapshot-delete *, \
+ /usr/bin/virsh -q snapshot-list *, /usr/bin/virsh snapshot-delete *, \
/bin/mkdir -p /media/*, \
/usr/bin/guestmount *, \
/bin/cp -rv /media/*, \
diff --git a/hosts/jenkins/etc/sudoers.d/jenkins b/hosts/jenkins/etc/sudoers.d/jenkins
index 1f45753..901bcf4 100644
--- a/hosts/jenkins/etc/sudoers.d/jenkins
+++ b/hosts/jenkins/etc/sudoers.d/jenkins
@@ -28,7 +28,7 @@ jenkins ALL= \
/usr/bin/qemu-system-x86_64 *, \
/usr/bin/qemu-img *, \
/sbin/lvcreate *, /sbin/lvremove *, \
- /usr/bin/virsh snapshot-list *, /usr/bin/virsh snapshot-delete *, \
+ /usr/bin/virsh -q snapshot-list *, /usr/bin/virsh snapshot-delete *, \
/bin/mkdir -p /media/*, \
/usr/bin/guestmount *, \
/bin/cp -rv /media/*, \
diff --git a/hosts/profitbricks-build10-amd64/etc/sudoers.d/jenkins b/hosts/profitbricks-build10-amd64/etc/sudoers.d/jenkins
index 1f45753..901bcf4 100644
--- a/hosts/profitbricks-build10-amd64/etc/sudoers.d/jenkins
+++ b/hosts/profitbricks-build10-amd64/etc/sudoers.d/jenkins
@@ -28,7 +28,7 @@ jenkins ALL= \
/usr/bin/qemu-system-x86_64 *, \
/usr/bin/qemu-img *, \
/sbin/lvcreate *, /sbin/lvremove *, \
- /usr/bin/virsh snapshot-list *, /usr/bin/virsh snapshot-delete *, \
+ /usr/bin/virsh -q snapshot-list *, /usr/bin/virsh snapshot-delete *, \
/bin/mkdir -p /media/*, \
/usr/bin/guestmount *, \
/bin/cp -rv /media/*, \
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/qa/jenkins.debian.net.git
More information about the Qa-jenkins-scm
mailing list