build: select_ubuntu_repo: break on err 69/26269/4
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Mon, 19 Dec 2016 23:49:47 +0000 (00:49 +0100)
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Tue, 20 Dec 2016 18:09:57 +0000 (19:09 +0100)
Stop ISO build process if no sane Ubuntu mirrors are available,
instead of continuing with an empty URL, which is bound to fail
later.

While at it, skip re-assesing the output of select_ubuntu_repo.sh if
the URL var already is set.

Also, stderr and stdout were both captured in UBUNTU_MIRROR_URL,
so disable debug by default, and only print debug info in case no
valid mirror is found.

v2 -> v3:
- allow "One hour behind" mirror state to be considered, since
  we already accept "Six hours behind" mirrors;

JIRA: FUEL-240

Change-Id: I791942da234304528ff5cae1891415602e1a62b2
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
build/Makefile
build/f_isoroot/f_repobuild/select_ubuntu_repo.sh

index c8fc793..d4b981a 100644 (file)
@@ -51,9 +51,13 @@ export REPOINFO  := $(BUILD_BASE)/repo_info.sh
 
 # Use snapshots
 # Use nearby repositories
-export MIRROR_UBUNTU_URL := $(shell ./f_isoroot/f_repobuild/select_ubuntu_repo.sh --url)
-export MIRROR_UBUNTU := $(shell echo "$(MIRROR_UBUNTU_URL)" | cut -d'/' -f3 )
-export MIRROR_UBUNTU_ROOT := $(shell echo -n '/' ; echo "$(MIRROR_UBUNTU_URL)" | cut -d'/' -f4-)
+export MIRROR_UBUNTU_URL ?= $(shell ./f_isoroot/f_repobuild/select_ubuntu_repo.sh)
+export MIRROR_UBUNTU ?= $(shell echo "$(MIRROR_UBUNTU_URL)" | cut -d'/' -f3 )
+export MIRROR_UBUNTU_ROOT ?= $(shell echo -n '/' ; echo "$(MIRROR_UBUNTU_URL)" | cut -d'/' -f4-)
+ifeq (,$(MIRROR_UBUNTU_URL))
+$(warning $(shell ./f_isoroot/f_repobuild/select_ubuntu_repo.sh -d))
+$(error No sane Ubuntu mirror available)
+endif
 
 export LATEST_MIRROR_ID_URL := http://$(shell ./select_closest_fuel_mirror.py)
 
index 24bd422..5618eb7 100755 (executable)
@@ -69,14 +69,14 @@ if [ "$1" == "-d" ]; then
 fi
 
 # Hardcode for testing purposes
-DEBUG=1
+DEBUG=1
 
 TMPFILE=$(mktemp /tmp/mirrorsXXXXX)A
 trap cleanup exit
 
 # Generate a list of mirrors considered as "up"
 curl -s  https://launchpad.net/ubuntu/+archivemirrors | \
-    grep -P -B8 "statusUP|statusSIX" | \
+    grep -P -B8 "statusUP|statusONE|statusSIX" | \
     grep -o -P "(f|ht)tp.*\""  | \
     sed 's/"$//' | sort | uniq > $TMPFILE