aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRamez Hanna <rhanna@informatiq.org>2011-08-31 00:20:09 +0200
committerDaniel Lezcano <dlezcano@fr.ibm.com>2011-08-31 00:20:09 +0200
commit29ec8f8473c5e384a8feaddf61dee68b39d069d6 (patch)
treef67b7cd2d79e7acbd20e1068743c02aedd0147d4
parentfix for missing EOF and fstab contents (diff)
downloadlxc-29ec8f8473c5e384a8feaddf61dee68b39d069d6.tar.gz
lxc-29ec8f8473c5e384a8feaddf61dee68b39d069d6.tar.bz2
lxc-29ec8f8473c5e384a8feaddf61dee68b39d069d6.zip
lxc-fedora.in
* if not running on fedora host amd -R is not set, use fedora 14 as default * trap SIGHUP SIGINT SIGTERM, and cleanup before exiting Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
-rw-r--r--templates/lxc-fedora.in28
1 files changed, 21 insertions, 7 deletions
diff --git a/templates/lxc-fedora.in b/templates/lxc-fedora.in
index c166efb..48cb1c0 100644
--- a/templates/lxc-fedora.in
+++ b/templates/lxc-fedora.in
@@ -316,8 +316,7 @@ if [ -z "$release" ]; then
if [ "$is_fedora" ]; then
release=$(cat /etc/fedora-release |awk '/^Fedora/ {print $3}')
else
- echo "This is not a fedora host and release missing, use -R|--release to specify release"
- exit 1
+ echo "This is not a fedora host and release missing, defaulting to 14. use -R|--release to specify release"
fi
fi
@@ -326,6 +325,7 @@ if [ "$(id -u)" != "0" ]; then
exit 1
fi
+
rootfs_path=$path/$name/rootfs
config_path=$default_path/$name
cache=$cache_base/$release
@@ -335,6 +335,25 @@ if [ -f $config_path/config ]; then
exit 1
fi
+revert()
+{
+ echo "Interrupted, so cleaning up"
+ lxc-destroy -n $name
+ # maybe was interrupted before copy config
+ rm -rf $path/$name
+ rm -rf $default_path/$name
+ echo "exiting..."
+ exit 1
+}
+
+trap revert SIGHUP SIGINT SIGTERM
+
+copy_configuration
+if [ $? -ne 0 ]; then
+ echo "failed write configuration file"
+ exit 1
+fi
+
install_fedora
if [ $? -ne 0 ]; then
echo "failed to install fedora"
@@ -347,11 +366,6 @@ if [ $? -ne 0 ]; then
exit 1
fi
-copy_configuration
-if [ $? -ne 0 ]; then
- echo "failed write configuration file"
- exit 1
-fi
if [ ! -z $clean ]; then
clean || exit 1