Bug 1858: Adding APT proxy
Adds apt proxy to build scripts and dockerfiles. Backward compatible
change and proxy will not be used unless environment variable
is supplied to docker build command.
Fixes bug 1858
Change-Id: Ibd25bd1c145b8d43eeb85c5c952aec30ebcce1fc
Signed-off-by: beierlm <mark.beierl@canonical.com>
diff --git a/tools/local-build.sh b/tools/local-build.sh
index 0898518..9c40272 100755
--- a/tools/local-build.sh
+++ b/tools/local-build.sh
@@ -16,6 +16,7 @@
# limitations under the License.
#######################################################################################
+APT_PROXY=""
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
HTTPDDIR="$( cd "${HOME}/snap/qhttp/common" &> /dev/null && pwd )"
HTTPPORT=8000
@@ -30,6 +31,7 @@
while [ $# -gt 0 ] ; do
case $1 in
--debug) set -x ;;
+ --apt-proxy) APT_PROXY="$2" && shift ;;
--help | -h) show_help && exit 0 ;;
--httpddir) HTTPDIR="$2" && shift;;
--install-local-registry) 'install_local_registry' ;;
@@ -67,8 +69,9 @@
OPTIONS:
--help display this help message
+ --apt-proxy provide an apt proxy to docker build steps
--debug enable set -x for this script
- --install-local-registry install and enable Microk8s local registry on port 32000
+ --install-local-registry install and enable Microk8s local registry on port 32000
--install-microstack install Microstack and configure to run robot tests
--install-qhttpd install QHTTPD as an HTTP server on port ${HTTPPORT}
--kubecfg path to kubecfg.yaml (uses Charmed OSM by default)
@@ -171,7 +174,12 @@
print_section "Building ${MODULE}"
cd ${MODULE}
find . -name '*.deb' -exec rm -v {} \;
- docker build ${NO_CACHE} -t ${MODULE,,}-stage2 .
+
+ BUILD_ARGS=""
+ if [ ! -z $APT_PROXY ] ; then
+ BUILD_ARGS="${BUILD_ARGS}--build-arg APT_PROXY=${APT_PROXY} "
+ fi
+ docker build ${NO_CACHE} ${BUILD_ARGS} -t ${MODULE,,}-stage2 .
STAGES="stage-build.sh"
if [ ! -z $TESTS ] ; then
@@ -217,6 +225,10 @@
print_section "Performing Stage 3"
MODULES=$(_find_module_dockerfile $1)
BUILD_ARGS=""
+ if [ ! -z $APT_PROXY ] ; then
+ BUILD_ARGS="${BUILD_ARGS}--build-arg APT_PROXY=${APT_PROXY} "
+ fi
+
HOSTIP=$(ip -4 addr show docker0 | grep -Po 'inet \K[\d.]+')
for file in ~/snap/qhttp/common/*.deb ; do
file=`basename ${file}`