use bash AND (&&) instead of command-separator (;) on docker images

Otherwise, image build phases yield images even though there may be
erros in the build process.

For example, the following image is built however there is a command
that fails (false command)

    echo -e 'FROM ubuntu:bionic\nRUN false; true' | docker build -
    Sending build context to Docker daemon  2.048kB
    Step 1/2 : FROM ubuntu:bionic
     ---> 56def654ec22
    Step 2/2 : RUN false; true
     ---> Running in 85759437ee6b
    Removing intermediate container 85759437ee6b
     ---> 44ee5447fd5d
    Successfully built 44ee5447fd5d

versus this image that fails (correctly) due to errors

    echo -e 'FROM ubuntu:bionic\nRUN false && true' | docker build -
    Sending build context to Docker daemon  2.048kB
    Step 1/2 : FROM ubuntu:bionic
     ---> 56def654ec22
    Step 2/2 : RUN false && true
     ---> Running in f4b9ac94bf12
    The command '/bin/sh -c false && true' returned a non-zero code: 1

Signed-off-by: Leonardo Sandoval <leonardo.sandoval@linaro.org>
Change-Id: Iea48194869c884fc6d3d6c64a1fd6ea7be41ec84
diff --git a/bionic-amd64-hafnium/Dockerfile b/bionic-amd64-hafnium/Dockerfile
index 1848b38..24c577c 100644
--- a/bionic-amd64-hafnium/Dockerfile
+++ b/bionic-amd64-hafnium/Dockerfile
@@ -31,24 +31,20 @@
 
 COPY setup-sshd /usr/sbin/setup-sshd
 
-RUN set -e ;\
-    apt update -q=2 ;\
-    apt install -q=2 --yes --no-install-recommends ${PKG_DEPS} ;\
-    # Setup buildslave user for Jenkins
-    useradd -m -s /bin/bash buildslave ;\
-    echo "buildslave:$BUILDSLAVE_PASSWORD" | chpasswd ;\
-    echo 'buildslave ALL = NOPASSWD: ALL' > /etc/sudoers.d/jenkins ;\
-    chmod 0440 /etc/sudoers.d/jenkins ;\
-    mkdir -p /var/run/sshd /home/buildslave/tools ;\
-    # Install Jenkins remoting
-    curl --create-dirs -fsSLo /usr/share/jenkins/slave.jar https://repo.jenkins-ci.org/public/org/jenkins-ci/main/remoting/${VERSION}/remoting-${VERSION}.jar ;\
-    # Fix permissions
-    chmod 0755 /usr/share/jenkins ;\
-    chmod 0644 /usr/share/jenkins/slave.jar ;\
-    chown -R buildslave:buildslave /home/buildslave/tools ;\
-    # Cleanup
-    apt-get clean ;\
-    rm -rf /var/lib/apt/lists/* /tmp/*
+RUN set -e \
+    && apt update -q=2 \
+    && apt install -q=2 --yes --no-install-recommends ${PKG_DEPS} \
+    && useradd -m -s /bin/bash buildslave \
+    && echo "buildslave:$BUILDSLAVE_PASSWORD" | chpasswd \
+    && echo 'buildslave ALL = NOPASSWD: ALL' > /etc/sudoers.d/jenkins \
+    && chmod 0440 /etc/sudoers.d/jenkins \
+    && mkdir -p /var/run/sshd /home/buildslave/tools \
+    && curl --create-dirs -fsSLo /usr/share/jenkins/slave.jar https://repo.jenkins-ci.org/public/org/jenkins-ci/main/remoting/${VERSION}/remoting-${VERSION}.jar \
+    && chmod 0755 /usr/share/jenkins \
+    && chmod 0644 /usr/share/jenkins/slave.jar \
+    && chown -R buildslave:buildslave /home/buildslave/tools \
+    && apt-get clean \
+    && rm -rf /var/lib/apt/lists/* /tmp/*
 
 EXPOSE 22
 ENTRYPOINT ["/usr/sbin/setup-sshd"]
diff --git a/bionic-amd64-tf-a-build/Dockerfile b/bionic-amd64-tf-a-build/Dockerfile
index 5f516e5..3244660 100644
--- a/bionic-amd64-tf-a-build/Dockerfile
+++ b/bionic-amd64-tf-a-build/Dockerfile
@@ -52,64 +52,55 @@
 COPY jenkins-slave /usr/local/bin/jenkins-slave
 COPY setup-sshd /usr/sbin/setup-sshd
 
-RUN set -e ;\
-    apt update -q=2 ;\
-    apt dist-upgrade -q=2 --yes ;\
-    apt install -q=2 --yes --no-install-recommends ${PKG_DEPS} ;\
-    curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash ;\
-    apt update -q=2 ;\
-    apt install -q=2 --yes --no-install-recommends git-lfs ;\
-    # Install Python requirements
-    curl -s https://bootstrap.pypa.io/get-pip.py -o /tmp/get-pip.py ;\
-    python2 /tmp/get-pip.py ;\
-    pip2 install --no-cache-dir -r /opt/requirements_python2.txt ;\
-    python3 /tmp/get-pip.py ;\
-    pip3 install --no-cache-dir -r /opt/requirements_python3.txt ;\
-    # Set Python 3 as default
-    ln -s -f /usr/bin/python3 /usr/bin/python ;\
-    # Setup buildslave user for Jenkins
-    useradd -m -s /bin/bash buildslave ;\
-    echo "buildslave:$BUILDSLAVE_PASSWORD" | chpasswd ;\
-    echo 'buildslave ALL = NOPASSWD: ALL' > /etc/sudoers.d/jenkins ;\
-    chmod 0440 /etc/sudoers.d/jenkins ;\
-    mkdir -p /var/run/sshd /home/buildslave/tools ;\
-    # Install cppcheck
-    wget -q http://github.com/danmar/cppcheck/releases/download/1.81/cppcheck-1.81.tar.gz -O /tmp/cppcheck.tar.gz ;\
-    tar -xf /tmp/cppcheck.tar.gz -C /opt ;\
-    (cd /opt/cppcheck-*; make CFGDIR=/opt/cppcheck-1.81/cfg; make install; make clean) ;\
-    # Install PlantUML
-    curl --create-dirs -fsSLo ${PLANTUML_JAR_PATH} https://repo1.maven.org/maven2/net/sourceforge/plantuml/plantuml/1.2019.6/plantuml-1.2019.6.jar ;\
-    # Install Jenkins remoting
-    curl --create-dirs -fsSLo /usr/share/jenkins/slave.jar https://repo.jenkins-ci.org/public/org/jenkins-ci/main/remoting/${VERSION}/remoting-${VERSION}.jar ;\
-    # Install CMake
-    curl --create-dirs -fsSLo /tmp/cmake-Linux-x86_64.tar.gz https://cmake.org/files/v3.15/cmake-3.15.0-Linux-x86_64.tar.gz ;\
-    tar -xf /tmp/cmake-Linux-x86_64.tar.gz -C /home/buildslave/tools --strip-components=1 ;\
-    # Fix permissions
-    chmod 0755 /usr/share/jenkins ;\
-    chmod 0644 /usr/share/jenkins/slave.jar ;\
-    chmod 0755 /usr/local/bin/jenkins-slave ;\
-    chown -R buildslave:buildslave /home/buildslave/tools /usr/share/plantuml ;\
-    # Cleanup
-    apt clean ;\
-    rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
+RUN set -e \
+    && apt update -q=2 \
+    && apt dist-upgrade -q=2 --yes \
+    && apt install -q=2 --yes --no-install-recommends ${PKG_DEPS} \
+    && curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash \
+    && apt update -q=2 \
+    && apt install -q=2 --yes --no-install-recommends git-lfs \
+    && curl -s https://bootstrap.pypa.io/get-pip.py -o /tmp/get-pip.py \
+    && python2 /tmp/get-pip.py \
+    && pip2 install --no-cache-dir -r /opt/requirements_python2.txt \
+    && python3 /tmp/get-pip.py \
+    && pip3 install --no-cache-dir -r /opt/requirements_python3.txt \
+    && ln -s -f /usr/bin/python3 /usr/bin/python \
+    && useradd -m -s /bin/bash buildslave \
+    && echo "buildslave:$BUILDSLAVE_PASSWORD" | chpasswd \
+    && echo 'buildslave ALL = NOPASSWD: ALL' > /etc/sudoers.d/jenkins \
+    && chmod 0440 /etc/sudoers.d/jenkins \
+    && mkdir -p /var/run/sshd /home/buildslave/tools \
+    && wget -q http://github.com/danmar/cppcheck/releases/download/1.81/cppcheck-1.81.tar.gz -O /tmp/cppcheck.tar.gz \
+    && tar -xf /tmp/cppcheck.tar.gz -C /opt \
+    && (cd /opt/cppcheck-*; make CFGDIR=/opt/cppcheck-1.81/cfg; make install; make clean) \
+    && curl --create-dirs -fsSLo ${PLANTUML_JAR_PATH} https://repo1.maven.org/maven2/net/sourceforge/plantuml/plantuml/1.2019.6/plantuml-1.2019.6.jar \
+    && curl --create-dirs -fsSLo /usr/share/jenkins/slave.jar https://repo.jenkins-ci.org/public/org/jenkins-ci/main/remoting/${VERSION}/remoting-${VERSION}.jar \
+    && curl --create-dirs -fsSLo /tmp/cmake-Linux-x86_64.tar.gz https://cmake.org/files/v3.15/cmake-3.15.0-Linux-x86_64.tar.gz \
+    && tar -xf /tmp/cmake-Linux-x86_64.tar.gz -C /home/buildslave/tools --strip-components=1 \
+    && chmod 0755 /usr/share/jenkins \
+    && chmod 0644 /usr/share/jenkins/slave.jar \
+    && chmod 0755 /usr/local/bin/jenkins-slave \
+    && chown -R buildslave:buildslave /home/buildslave/tools /usr/share/plantuml \
+    && apt clean \
+    && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
 
 ### Install GNU toolchain (arm-none-eabi)
 ARG GNU_GCC_ARM_VERSION="9.2-2019.12"
 ARG GNU_GCC_ARM_TAR="gcc-arm-${GNU_GCC_ARM_VERSION}-x86_64-arm-none-eabi.tar.xz"
 ARG GNU_GCC_ARM_URL="https://developer.arm.com/-/media/Files/downloads/gnu-a/${GNU_GCC_ARM_VERSION}/binrel/${GNU_GCC_ARM_TAR}"
 
-RUN curl --create-dirs -fsSLo /tmp/${GNU_GCC_ARM_TAR} ${GNU_GCC_ARM_URL} && \
-    tar -xf /tmp/${GNU_GCC_ARM_TAR} -C ${TOOLS_DIR} --strip-components=1 && \
-    rm /tmp/${GNU_GCC_ARM_TAR}
+RUN curl --create-dirs -fsSLo /tmp/${GNU_GCC_ARM_TAR} ${GNU_GCC_ARM_URL} \
+    && tar -xf /tmp/${GNU_GCC_ARM_TAR} -C ${TOOLS_DIR} --strip-components=1 \
+    && rm /tmp/${GNU_GCC_ARM_TAR}
 
 ### Install GNU toolchain (aarch64-none-elf)
 ARG GNU_GCC_AARCH64_VERSION="9.2-2019.12"
 ARG GNU_GCC_AARCH64_TAR="gcc-arm-${GNU_GCC_AARCH64_VERSION}-x86_64-aarch64-none-elf.tar.xz"
 ARG GNU_GCC_AARCH64_URL="https://developer.arm.com/-/media/Files/downloads/gnu-a/$GNU_GCC_AARCH64_VERSION/binrel/${GNU_GCC_AARCH64_TAR}"
 
-RUN curl --create-dirs -fsSLo /tmp/${GNU_GCC_AARCH64_TAR} ${GNU_GCC_AARCH64_URL} && \
-    tar -xf /tmp/${GNU_GCC_AARCH64_TAR} -C ${TOOLS_DIR} --strip-components=1 && \
-    rm /tmp/${GNU_GCC_AARCH64_TAR}
+RUN curl --create-dirs -fsSLo /tmp/${GNU_GCC_AARCH64_TAR} ${GNU_GCC_AARCH64_URL} \
+    && tar -xf /tmp/${GNU_GCC_AARCH64_TAR} -C ${TOOLS_DIR} --strip-components=1 \
+    && rm /tmp/${GNU_GCC_AARCH64_TAR}
 
 ### Install Arm Clang (armclang)
 ARG ARM_CLANG_VERSION="6.13"
@@ -118,20 +109,20 @@
 ?revision=6a961cf7-1d9a-4664-900b-11d20552dbc7?product=Download%20Arm%20Compiler,64-bit,,Linux,6.13"
 ARG ARM_CLANG_INSTALL_DIR="${TOOLS_DIR}/armclang"
 
-RUN curl --create-dirs -fsSLo /tmp/${ARM_CLANG_TAR} ${ARM_CLANG_URL} && \
-    mkdir -p ${ARM_CLANG_INSTALL_DIR} && \
-    tar -xf /tmp/${ARM_CLANG_TAR} -C ${ARM_CLANG_INSTALL_DIR} && \
-    ${ARM_CLANG_INSTALL_DIR}/install_x86_64.sh \
-           --no-interactive \
-           --i-agree-to-the-contained-eula \
-           -d ${TOOLS_DIR} ;\
-    rm -rf ${ARM_CLANG_INSTALL_DIR} /tmp/${ARM_CLANG_TAR}
+RUN curl --create-dirs -fsSLo /tmp/${ARM_CLANG_TAR} ${ARM_CLANG_URL} \
+    && mkdir -p ${ARM_CLANG_INSTALL_DIR} \
+    && tar -xf /tmp/${ARM_CLANG_TAR} -C ${ARM_CLANG_INSTALL_DIR} \
+    && ${ARM_CLANG_INSTALL_DIR}/install_x86_64.sh \
+            --no-interactive \
+            --i-agree-to-the-contained-eula \
+            -d ${TOOLS_DIR} \
+    && rm -rf ${ARM_CLANG_INSTALL_DIR} /tmp/${ARM_CLANG_TAR}
 
 ARG LINARO_VERSION=19.06
-RUN mkdir -p nfs/downloads/linaro/${LINARO_VERSION} ;\
-    cd nfs/downloads/linaro/${LINARO_VERSION} ;\
-    wget -q -c -m -A .zip -np -nd https://releases.linaro.org/members/arm/platforms/${LINARO_VERSION}/ ;\
-    for file in *.zip; do unzip -q ${file} -d $(basename ${file} .zip); done
+RUN mkdir -p nfs/downloads/linaro/${LINARO_VERSION} \
+    && cd nfs/downloads/linaro/${LINARO_VERSION} \
+    && wget -q -c -m -A .zip -np -nd https://releases.linaro.org/members/arm/platforms/${LINARO_VERSION}/ \
+    && for file in *.zip; do unzip -q ${file} -d $(basename ${file} .zip); done
 
 EXPOSE 22
 ENTRYPOINT ["/usr/sbin/setup-sshd"]
diff --git a/bionic-amd64-tf-m-build/Dockerfile b/bionic-amd64-tf-m-build/Dockerfile
index 8956b8c..ade0b11 100644
--- a/bionic-amd64-tf-m-build/Dockerfile
+++ b/bionic-amd64-tf-m-build/Dockerfile
@@ -52,46 +52,37 @@
 COPY jenkins-slave /usr/local/bin/jenkins-slave
 COPY setup-sshd /usr/sbin/setup-sshd
 
-RUN set -e ;\
-    apt update -q=2 ;\
-    apt dist-upgrade -q=2 --yes ;\
-    apt install -q=2 --yes --no-install-recommends ${PKG_DEPS} ;\
-    curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash ;\
-    apt update -q=2 ;\
-    apt install -q=2 --yes --no-install-recommends git-lfs ;\
-    # Install Python requirements
-    curl -s https://bootstrap.pypa.io/get-pip.py -o /tmp/get-pip.py ;\
-    python2 /tmp/get-pip.py ;\
-    pip2 install --no-cache-dir -r /opt/requirements_python2.txt ;\
-    python3 /tmp/get-pip.py ;\
-    pip3 install --no-cache-dir -r /opt/requirements_python3.txt ;\
-    # Set Python 3 as default
-    ln -s -f /usr/bin/python3 /usr/bin/python ;\
-    # Setup buildslave user for Jenkins
-    useradd -m -s /bin/bash buildslave ;\
-    echo "buildslave:$BUILDSLAVE_PASSWORD" | chpasswd ;\
-    echo 'buildslave ALL = NOPASSWD: ALL' > /etc/sudoers.d/jenkins ;\
-    chmod 0440 /etc/sudoers.d/jenkins ;\
-    mkdir -p /var/run/sshd /home/buildslave/tools ;\
-    # Install cppcheck
-    wget -q http://github.com/danmar/cppcheck/releases/download/1.81/cppcheck-1.81.tar.gz -O /tmp/cppcheck.tar.gz ;\
-    tar -xf /tmp/cppcheck.tar.gz -C /opt ;\
-    (cd /opt/cppcheck-*; make CFGDIR=/opt/cppcheck-1.81/cfg; make install; make clean) ;\
-    # Install PlantUML
-    curl --create-dirs -fsSLo ${PLANTUML_JAR_PATH} https://repo1.maven.org/maven2/net/sourceforge/plantuml/plantuml/1.2019.6/plantuml-1.2019.6.jar ;\
-    # Install Jenkins remoting
-    curl --create-dirs -fsSLo /usr/share/jenkins/slave.jar https://repo.jenkins-ci.org/public/org/jenkins-ci/main/remoting/${VERSION}/remoting-${VERSION}.jar ;\
-    # Install CMake
-    curl --create-dirs -fsSLo /tmp/cmake-Linux-x86_64.tar.gz https://cmake.org/files/v3.15/cmake-3.15.0-Linux-x86_64.tar.gz ;\
-    tar -xf /tmp/cmake-Linux-x86_64.tar.gz -C /home/buildslave/tools --strip-components=1 ;\
-    # Fix permissions
-    chmod 0755 /usr/share/jenkins ;\
-    chmod 0644 /usr/share/jenkins/slave.jar ;\
-    chmod 0755 /usr/local/bin/jenkins-slave ;\
-    chown -R buildslave:buildslave /home/buildslave/tools /usr/share/plantuml ;\
-    # Cleanup
-    apt clean ;\
-    rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
+RUN set -e \
+    && apt update -q=2 \
+    && apt dist-upgrade -q=2 --yes \
+    && apt install -q=2 --yes --no-install-recommends ${PKG_DEPS} \
+    && curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash \
+    && apt update -q=2 \
+    && apt install -q=2 --yes --no-install-recommends git-lfs \
+    && curl -s https://bootstrap.pypa.io/get-pip.py -o /tmp/get-pip.py \
+    && python2 /tmp/get-pip.py \
+    && pip2 install --no-cache-dir -r /opt/requirements_python2.txt \
+    && python3 /tmp/get-pip.py \
+    && pip3 install --no-cache-dir -r /opt/requirements_python3.txt \
+    && ln -s -f /usr/bin/python3 /usr/bin/python \
+    && useradd -m -s /bin/bash buildslave \
+    && echo "buildslave:$BUILDSLAVE_PASSWORD" | chpasswd \
+    && echo 'buildslave ALL = NOPASSWD: ALL' > /etc/sudoers.d/jenkins \
+    && chmod 0440 /etc/sudoers.d/jenkins \
+    && mkdir -p /var/run/sshd /home/buildslave/tools \
+    && wget -q http://github.com/danmar/cppcheck/releases/download/1.81/cppcheck-1.81.tar.gz -O /tmp/cppcheck.tar.gz \
+    && tar -xf /tmp/cppcheck.tar.gz -C /opt \
+    && (cd /opt/cppcheck-*; make CFGDIR=/opt/cppcheck-1.81/cfg; make install; make clean) \
+    && curl --create-dirs -fsSLo ${PLANTUML_JAR_PATH} https://repo1.maven.org/maven2/net/sourceforge/plantuml/plantuml/1.2019.6/plantuml-1.2019.6.jar \
+    && curl --create-dirs -fsSLo /usr/share/jenkins/slave.jar https://repo.jenkins-ci.org/public/org/jenkins-ci/main/remoting/${VERSION}/remoting-${VERSION}.jar \
+    && curl --create-dirs -fsSLo /tmp/cmake-Linux-x86_64.tar.gz https://cmake.org/files/v3.15/cmake-3.15.0-Linux-x86_64.tar.gz \
+    && tar -xf /tmp/cmake-Linux-x86_64.tar.gz -C /home/buildslave/tools --strip-components=1 \
+    && chmod 0755 /usr/share/jenkins \
+    && chmod 0644 /usr/share/jenkins/slave.jar \
+    && chmod 0755 /usr/local/bin/jenkins-slave \
+    && chown -R buildslave:buildslave /home/buildslave/tools /usr/share/plantuml \
+    && apt clean \
+    && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
 
 ## Latest toolchains, available in $PATH. There can be newer versions of toolchains at
 ## upstream projects but these are latest for the docker image
@@ -102,18 +93,18 @@
 ARG GNU_GCC_ARM_URL='https://developer.arm.com/-/media/Files/downloads/gnu-rm/7-2018q2/gcc-arm-none-eabi-7-2018-q2-update-linux.tar.bz2\
 ?revision=bc2c96c0-14b5-4bb4-9f18-bceb4050fee7?product=GNU%20Arm%20Embedded%20Toolchain%20Downloads,64-bit,,Linux,7-2018-q2-update'
 
-RUN curl --create-dirs -fsSLo /tmp/${GNU_GCC_ARM_TAR} ${GNU_GCC_ARM_URL} ;\
-    tar -xf /tmp/${GNU_GCC_ARM_TAR} -C ${TOOLS_DIR} --strip-components=1 ;\
-    rm /tmp/${GNU_GCC_ARM_TAR}
+RUN curl --create-dirs -fsSLo /tmp/${GNU_GCC_ARM_TAR} ${GNU_GCC_ARM_URL} \
+    && tar -xf /tmp/${GNU_GCC_ARM_TAR} -C ${TOOLS_DIR} --strip-components=1 \
+    && rm /tmp/${GNU_GCC_ARM_TAR}
 
 ### Install GNU toolchain (aarch64-none-elf)
 ARG GNU_GCC_AARCH64_VERSION="9.2-2019.12"
 ARG GNU_GCC_AARCH64_TAR="gcc-arm-${GNU_GCC_AARCH64_VERSION}-x86_64-aarch64-none-elf.tar.xz"
 ARG GNU_GCC_AARCH64_URL="https://developer.arm.com/-/media/Files/downloads/gnu-a/$GNU_GCC_AARCH64_VERSION/binrel/${GNU_GCC_AARCH64_TAR}"
 
-RUN curl --create-dirs -fsSLo /tmp/${GNU_GCC_AARCH64_TAR} ${GNU_GCC_AARCH64_URL} ;\
-    tar -Jxf /tmp/${GNU_GCC_AARCH64_TAR} -C ${TOOLS_DIR} --strip-components=1 ;\
-    rm /tmp/${GNU_GCC_AARCH64_TAR}
+RUN curl --create-dirs -fsSLo /tmp/${GNU_GCC_AARCH64_TAR} ${GNU_GCC_AARCH64_URL} \
+    && tar -Jxf /tmp/${GNU_GCC_AARCH64_TAR} -C ${TOOLS_DIR} --strip-components=1 \
+    && rm /tmp/${GNU_GCC_AARCH64_TAR}
 
 ### Install Arm Clang (armclang)
 ARG ARM_CLANG_VERSION="6.13"
@@ -122,20 +113,20 @@
 ?revision=6a961cf7-1d9a-4664-900b-11d20552dbc7?product=Download%20Arm%20Compiler,64-bit,,Linux,6.13"
 ARG ARM_CLANG_INSTALL_DIR="${TOOLS_DIR}/armclang"
 
-RUN curl --create-dirs -fsSLo /tmp/${ARM_CLANG_TAR} ${ARM_CLANG_URL} ;\
-    mkdir -p ${ARM_CLANG_INSTALL_DIR} ;\
-    tar -xzf /tmp/${ARM_CLANG_TAR} -C ${ARM_CLANG_INSTALL_DIR} ;\
-    ${ARM_CLANG_INSTALL_DIR}/install_x86_64.sh \
-           --no-interactive \
-           --i-agree-to-the-contained-eula \
-           -d ${TOOLS_DIR} ;\
-    rm -rf ${ARM_CLANG_INSTALL_DIR} /tmp/${ARM_CLANG_TAR}
+RUN curl --create-dirs -fsSLo /tmp/${ARM_CLANG_TAR} ${ARM_CLANG_URL} \
+    && mkdir -p ${ARM_CLANG_INSTALL_DIR} \
+    && tar -xzf /tmp/${ARM_CLANG_TAR} -C ${ARM_CLANG_INSTALL_DIR} \
+    && ${ARM_CLANG_INSTALL_DIR}/install_x86_64.sh \
+            --no-interactive \
+            --i-agree-to-the-contained-eula \
+            -d ${TOOLS_DIR} \
+    && rm -rf ${ARM_CLANG_INSTALL_DIR} /tmp/${ARM_CLANG_TAR}
 
 ARG LINARO_VERSION=19.06
-RUN mkdir -p nfs/downloads/linaro/${LINARO_VERSION} ;\
-    cd nfs/downloads/linaro/${LINARO_VERSION} ;\
-    wget -q -c -m -A .zip -np -nd https://releases.linaro.org/members/arm/platforms/${LINARO_VERSION}/ ;\
-    for file in *.zip; do unzip -q ${file} -d $(basename ${file} .zip); done
+RUN mkdir -p nfs/downloads/linaro/${LINARO_VERSION} \
+    && cd nfs/downloads/linaro/${LINARO_VERSION} \
+    && wget -q -c -m -A .zip -np -nd https://releases.linaro.org/members/arm/platforms/${LINARO_VERSION}/ \
+    && for file in *.zip; do unzip -q ${file} -d $(basename ${file} .zip); done
 
 EXPOSE 22
 ENTRYPOINT ["/usr/sbin/setup-sshd"]
diff --git a/centos8-amd64-flexnet/Dockerfile b/centos8-amd64-flexnet/Dockerfile
index e441395..727de74 100644
--- a/centos8-amd64-flexnet/Dockerfile
+++ b/centos8-amd64-flexnet/Dockerfile
@@ -6,16 +6,16 @@
 # add the flexlm commands to $PATH
 ENV PATH="${PATH}:/opt/flexnetserver/"
 
-RUN yum update -y && yum install -y \
-    redhat-lsb-core && \
-    yum clean all
+RUN yum update -y \
+    && yum install -y redhat-lsb-core \
+    && yum clean all
 
 ADD entrypoint.sh /opt/flexnetserver/
 
 # lmadmin is required for -2 -p flag support
-RUN groupadd -r lmadmin && \
-    useradd -r -g lmadmin lmadmin && \
-    chown lmadmin:lmadmin /opt/flexnetserver/
+RUN groupadd -r lmadmin \
+    && useradd -r -g lmadmin lmadmin \
+    && chown lmadmin:lmadmin /opt/flexnetserver/
 
 #########################################
 ##              VOLUMES                ##