Workaround missing zip snapshot
At the moment, xenserver installation depends on github snapshots.
Unfortunately, git.openstack.org does not have that capability. This
fix includes:
- Exit with error code, if a download fails
- create proper urls, even if they are using the git protocol
- set git base to github - so we are able to do snapshots
Fixes bug: 1259905
Change-Id: I8d0cf8bf8abb16ee0a4b138a6719409c75e7a146
diff --git a/tools/xen/functions b/tools/xen/functions
index 563303d..97c56bc 100644
--- a/tools/xen/functions
+++ b/tools/xen/functions
@@ -1,5 +1,14 @@
#!/bin/bash
+function die_with_error {
+ local err_msg
+
+ err_msg="$1"
+
+ echo "$err_msg" >&2
+ exit 1
+}
+
function xapi_plugin_location {
for PLUGIN_DIR in "/etc/xapi.d/plugins/" "/usr/lib/xcp/plugins/" "/usr/lib/xapi/plugins"; do
if [ -d $PLUGIN_DIR ]; then
@@ -11,7 +20,7 @@
}
function zip_snapshot_location {
- echo $1 | sed "s:\.git$::;s:$:/zipball/$2:g"
+ echo $1 | sed "s,^git://,http://,g;s:\.git$::;s:$:/zipball/$2:g"
}
function create_directory_for_kernels {
@@ -41,7 +50,9 @@
local EXTRACTED_FILES=$(mktemp -d)
{
- wget -nv $ZIPBALL_URL -O $LOCAL_ZIPBALL --no-check-certificate
+ if ! wget -nv $ZIPBALL_URL -O $LOCAL_ZIPBALL --no-check-certificate; then
+ die_with_error "Failed to download [$ZIPBALL_URL]"
+ fi
unzip -q -o $LOCAL_ZIPBALL -d $EXTRACTED_FILES
rm -f $LOCAL_ZIPBALL
} >&2