]> gitweb.fluxo.info Git - hydra.git/commitdiff
Adding hydractl pbuilder-upgrade
authorSilvio Rhatto <rhatto@riseup.net>
Thu, 27 Nov 2014 16:37:28 +0000 (14:37 -0200)
committerSilvio Rhatto <rhatto@riseup.net>
Thu, 27 Nov 2014 16:37:28 +0000 (14:37 -0200)
TODO.md
share/hydractl/pbuilder-upgrade [new file with mode: 0755]
share/hydractl/upgrade

diff --git a/TODO.md b/TODO.md
index fa46fb407e02e2c6b329b3b56f8a04e8ee7e514a..c6667e4d18651c82739d9edd897fafd6a7a98380 100644 (file)
--- a/TODO.md
+++ b/TODO.md
@@ -27,7 +27,6 @@ Hydractl
     - change default cryptsetup options.
     - support for cswap with passphrase.
   - upgrade:
-    - run pbuilder/cowbuilder update for all chroots.
     - run vbox upgrade (from vbox repo) if available on all available instances.
     - run docker upgrade on all available images.
   - deploy: PREFIX support.
diff --git a/share/hydractl/pbuilder-upgrade b/share/hydractl/pbuilder-upgrade
new file mode 100755 (executable)
index 0000000..54886f4
--- /dev/null
@@ -0,0 +1,39 @@
+#!/bin/bash
+#
+# Pbuilder mass upgrader.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public
+# License along with this program.  If not, see
+# <http://www.gnu.org/licenses/>.
+
+# Basic parameters
+BASE="/var/cache/pbuilder/"
+
+# Set sudo config
+if [ "`whoami`" != 'root' ]; then
+  sudo="sudo"
+fi
+
+# Check base
+if [ ! -d "$BASE" ]; then
+  exit
+fi
+
+# Upgrade all pbuilder chroots
+for chroot in `ls $BASE`; do
+  folder="$BASE/$chroot"
+  if [ -f "$folder/base.cow/etc/debian_version" ]; then
+    echo "Upgrading $folder..."
+    $sudo cowbuilder --update --basepath "$folder/base.cow"
+  fi
+done
index 92bf0c424d557a6dac2686a4e52b3a70eb621169..e3c1141832b45d2137d39caa0f59d2a28ac238d8 100755 (executable)
@@ -35,6 +35,9 @@ fi
 # Upgrade all chroots
 hydractl chroot-upgrade
 
+# Upgrade all pbuilder chroots
+hydractl pbuilder-upgrade
+
 # Cleanup
 if [ "$CLEAN" == "clean" ]; then
   $sudo aptitude clean