From a0e4b2ddf2c364895e9ded22fbb2bdeb987b718a Mon Sep 17 00:00:00 2001 From: James Harton Date: Wed, 26 Feb 2020 10:53:15 +1300 Subject: [PATCH] Improve builder script. - Don't just pull all tags from the upstream registries. That's mental. - Don't try and cross compile unless the arch is arm and the build platform is not arm. --- build.sh | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/build.sh b/build.sh index 50c1521..9c424b5 100755 --- a/build.sh +++ b/build.sh @@ -15,17 +15,20 @@ ERLANG_CONTAINER=$CI_REGISTRY/jimsy/balena-erlang/$ARCH-$VARIANT-build if (echo $ARCH | grep 'arm\|aarch64\|rpi') then - CROSS_BUILD_START='RUN [ "cross-build-start" ]' - CROSS_BUILD_END='RUN [ "cross-build-start" ]' + if (uname -m | grep 'x86_64\|i386') + then + CROSS_BUILD_START='RUN [ "cross-build-start" ]' + CROSS_BUILD_END='RUN [ "cross-build-end" ]' + else + CROSS_BUILD_START='' + CROSS_BUILD_END='' + fi else CROSS_BUILD_START='' CROSS_BUILD_END='' fi docker pull $BASE_CONTAINER || true -docker pull -a $CONTAINER_NAME-build || true -docker pull -a $CONTAINER_NAME || true -docker pull -a $ERLANG_CONTAINER || true grep -v '^#' versions | sort -r | while IFS=' ' read ELIXIR_VERSION ERLANG_MAJOR_VERSION do @@ -34,6 +37,13 @@ do ELIXIR_MAJOR_VERSION=$(echo $ELIXIR_VERSION | cut -d\. -f1-2) TEMP_CONTAINER=$ARCH-$VARIANT-build-$ELIXIR_VERSION-$TAG:$CI_COMMIT_SHA + docker pull $ERLANG_CONTAINER:$ERLANG_MAJOR_VERSION-$TAG || true + docker pull $CONTAINER_NAME-build-$ELIXIR_VERSION-$TAG || true + docker pull $CONTAINER_NAME-build-$ELIXIR_MAJOR_VERSION-$TAG || true + docker pull $CONTAINER_NAME-$ELIXIR_VERSION-$TAG || true + docker pull $CONTAINER_NAME-$ELIXIR_MAJOR_VERSION-$TAG || true + + sed \ -e "s~#{CROSS_BUILD_START}~$CROSS_BUILD_START~g" \ -e "s~#{CROSS_BUILD_END}~$CROSS_BUILD_END~g" \