diff options
author | Alexandru Avadanii <Alexandru.Avadanii@enea.com> | 2016-05-08 22:38:22 +0200 |
---|---|---|
committer | Alexandru Avadanii <Alexandru.Avadanii@enea.com> | 2016-05-08 23:58:30 +0200 |
commit | 5837be3b12a39bbf85f267182618fd28f8b2529e (patch) | |
tree | 2ef921b8dced6eb69956a58a5ceb7fb25ff968d7 /patches/opnfv-fuel | |
parent | ca213fa7036802c695f287615ae1dd0bc98edf1e (diff) |
f_repobuild: Repeat mirror build up to ten times.
OPNFV ISO build uses fuel-mirror to create a local Ubuntu
partial mirror in nailgun.
Work around temporary mirror issue (e.g. during rsync) by
retrying mirror build up to 10 times.
Change-Id: I8afb0f55b08c1680903a09e07ac96b4d29415ed5
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Diffstat (limited to 'patches/opnfv-fuel')
-rw-r--r-- | patches/opnfv-fuel/0026-f_repobuild-Repeat-mirror-build-up-to-ten-times.patch | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/patches/opnfv-fuel/0026-f_repobuild-Repeat-mirror-build-up-to-ten-times.patch b/patches/opnfv-fuel/0026-f_repobuild-Repeat-mirror-build-up-to-ten-times.patch new file mode 100644 index 00000000..0b1f92f1 --- /dev/null +++ b/patches/opnfv-fuel/0026-f_repobuild-Repeat-mirror-build-up-to-ten-times.patch @@ -0,0 +1,73 @@ +From: Alexandru Avadanii <Alexandru.Avadanii@enea.com> +Date: Sun, 8 May 2016 22:37:43 +0200 +Subject: [PATCH] f_repobuild: Repeat mirror build up to ten times. + +OPNFV ISO build uses fuel-mirror to create a local Ubuntu +partial mirror in nailgun. + +Work around temporary mirror issue (e.g. during rsync) by +retrying mirror build up to 10 times. + +Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> +--- + build/f_isoroot/f_repobuild/Makefile | 6 +++++- + build/f_isoroot/f_repobuild/fuel_mirror_loop | 26 ++++++++++++++++++++++++++ + 2 files changed, 31 insertions(+), 1 deletion(-) + create mode 100755 build/f_isoroot/f_repobuild/fuel_mirror_loop + +diff --git a/build/f_isoroot/f_repobuild/Makefile b/build/f_isoroot/f_repobuild/Makefile +index 5e7157b..9abe9bb 100644 +--- a/build/f_isoroot/f_repobuild/Makefile ++++ b/build/f_isoroot/f_repobuild/Makefile +@@ -23,6 +23,9 @@ export OPENSTACK_VERSION + .PHONY: all + all: nailgun + ++nailgun_mirror: ++ sudo fuel-mirror --debug --config ./opnfv-config.yaml create --group ubuntu --pattern=ubuntu ++ + nailgun: + sudo apt-get install -y git libxml2-dev libxslt-dev python-dev python-pip libz-dev libyaml-dev createrepo python-yaml + # python-debian from Ubuntu can't parse foreign arch relationships, use pip +@@ -35,7 +38,8 @@ nailgun: + sudo pip install ./fuel-mirror + sudo pip install ./fuel-mirror/contrib/fuel_mirror + ./opnfv_mirror_conf.py +- sudo fuel-mirror --debug --config ./opnfv-config.yaml create --group ubuntu --pattern=ubuntu ++ # Repeat mirror build up to ten times ++ sudo -E ./fuel_mirror_loop + sudo chmod -R 755 /var/www/nailgun + cp -Rp /var/www/nailgun . + # On the end we want to have ubuntu repository in mirrors/ubuntu directory +diff --git a/build/f_isoroot/f_repobuild/fuel_mirror_loop b/build/f_isoroot/f_repobuild/fuel_mirror_loop +new file mode 100755 +index 0000000..f123cf2 +--- /dev/null ++++ b/build/f_isoroot/f_repobuild/fuel_mirror_loop +@@ -0,0 +1,26 @@ ++#!/bin/bash ++############################################################################## ++# Copyright (c) 2016 Ericsson AB and others. ++# Copyright (c) 2016 Enea AB and others. ++# All rights reserved. This program and the accompanying materials ++# are made available under the terms of the Apache License, Version 2.0 ++# which accompanies this distribution, and is available at ++# http://www.apache.org/licenses/LICENSE-2.0 ++############################################################################## ++ ++maxcount=10 ++cnt=0 ++rc=1 ++while [ $cnt -lt $maxcount ] && [ $rc -ne 0 ] ++do ++ cnt=$[cnt + 1] ++ echo -e "\n\n\n*** Starting mirror build attempt # $cnt" ++ make nailgun_mirror ++ rc=$? ++ if [ $rc -ne 0 ]; then ++ echo "### Mirror build failed with rc $rc ###" ++ else ++ echo "### Mirror build successful at attempt # $cnt" ++ fi ++done ++exit $rc |