From 507ef682cfb0f05f843ab36e67b70db41f2863b4 Mon Sep 17 00:00:00 2001 From: Cédric Ollivier Date: Mon, 10 Aug 2020 21:40:11 +0200 Subject: Compile all Functest K8s containers for arm v7 and v8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It removes sudo when useless and turns debug on when compiling K8s binaries. It avoids TravisCI timeouts (No output has been received)[1] [1] https://travis-ci.org/github/collivier/functest-kubernetes/jobs/716819529 Change-Id: I4719257596bf9a6510e2f772271b336847d1ccb5 Signed-off-by: Cédric Ollivier (cherry picked from commit 3c4543a8ef6f84a5f25483a6dfe50e0075a9cd0e) --- .travis.yml | 100 +++++++++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 82 insertions(+), 18 deletions(-) (limited to '.travis.yml') diff --git a/.travis.yml b/.travis.yml index a8894d47..829e9d3f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,76 +9,140 @@ addons: - libssl1.0.0 before_script: + - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - sudo add-apt-repository -y ppa:deadsnakes/ppa - sudo apt-get update - sudo apt-get install python3.6 python3.6-dev - sudo pip install tox - - sudo -E docker login -u="${DOCKER_USERNAME}" -p="${DOCKER_PASSWORD}" + - docker login -u="${DOCKER_USERNAME}" -p="${DOCKER_PASSWORD}" - (cd .. && git clone https://github.com/estesp/manifest-tool) - (cd ../manifest-tool && git checkout v0.9.0) - - (cd ../manifest-tool && sudo -E make && sudo -E make install) + - (cd ../manifest-tool && make && sudo make install) jobs: include: - stage: run unit tests script: tox -e pep8,pylint,yamllint,ansiblelint,bashate,py27,py36,bandit - - stage: build functest-kubernetes-core image - script: sudo -E bash build.sh + - stage: build functest-kubernetes-core images + script: bash build.sh env: - REPO="${DOCKER_USERNAME}" - amd64_dirs="docker/core" + - arm_dirs="" - arm64_dirs="" + - script: bash build.sh + env: + - REPO="${DOCKER_USERNAME}" + - amd64_dirs="" + - arm_dirs="docker/core" + - arm64_dirs="" + - script: bash build.sh + env: + - REPO="${DOCKER_USERNAME}" + - amd64_dirs="" + - arm_dirs="" + - arm64_dirs="docker/core" - stage: publish functest-kubernetes-core manifests script: > - sudo manifest-tool push from-args \ - --platforms linux/amd64 \ + manifest-tool push from-args \ + --platforms linux/amd64,linux/arm,linux/arm64 \ --template ${DOCKER_USERNAME}/functest-kubernetes-core:ARCH-hunter \ --target ${DOCKER_USERNAME}/functest-kubernetes-core:hunter - stage: build functest-kubernetes-[healthcheck,cnf,security] images - script: sudo -E bash build.sh + script: bash build.sh env: - REPO="${DOCKER_USERNAME}" - amd64_dirs="docker/healthcheck" + - arm_dirs="" - arm64_dirs="" - - script: sudo -E bash build.sh + - script: bash build.sh + env: + - REPO="${DOCKER_USERNAME}" + - amd64_dirs="" + - arm_dirs="docker/healthcheck" + - arm64_dirs="" + - script: bash build.sh + env: + - REPO="${DOCKER_USERNAME}" + - amd64_dirs="" + - arm_dirs="" + - arm64_dirs="docker/healthcheck" + - script: bash build.sh env: - REPO="${DOCKER_USERNAME}" - amd64_dirs="docker/cnf" + - arm_dirs="" - arm64_dirs="" + - script: bash build.sh + env: + - REPO="${DOCKER_USERNAME}" + - amd64_dirs="" + - arm_dirs="docker/cnf" + - arm64_dirs="" + - script: bash build.sh + env: + - REPO="${DOCKER_USERNAME}" + - amd64_dirs="" - arm_dirs="" - - script: sudo -E bash build.sh + - arm64_dirs="docker/cnf" + - script: bash build.sh env: - REPO="${DOCKER_USERNAME}" - amd64_dirs="docker/security" + - arm_dirs="" - arm64_dirs="" + - script: bash build.sh + env: + - REPO="${DOCKER_USERNAME}" + - amd64_dirs="" + - arm_dirs="docker/security" + - arm64_dirs="" + - script: bash build.sh + env: + - REPO="${DOCKER_USERNAME}" + - amd64_dirs="" - arm_dirs="" + - arm64_dirs="docker/security" - stage: publish functest-kubernetes-[healthcheck,cnf,security] manifests script: > - sudo manifest-tool push from-args \ - --platforms linux/amd64 \ + manifest-tool push from-args \ + --platforms linux/amd64,linux/arm,linux/arm64 \ --template \ ${DOCKER_USERNAME}/functest-kubernetes-healthcheck:ARCH-hunter \ --target ${DOCKER_USERNAME}/functest-kubernetes-healthcheck:hunter - script: > - sudo manifest-tool push from-args \ - --platforms linux/amd64 \ + manifest-tool push from-args \ + --platforms linux/amd64,linux/arm,linux/arm64 \ --template ${DOCKER_USERNAME}/functest-kubernetes-cnf:ARCH-hunter \ --target ${DOCKER_USERNAME}/functest-kubernetes-cnf:hunter - script: > - sudo manifest-tool push from-args \ - --platforms linux/amd64 \ + manifest-tool push from-args \ + --platforms linux/amd64,linux/arm,linux/arm64 \ --template \ ${DOCKER_USERNAME}/functest-kubernetes-security:ARCH-hunter \ --target ${DOCKER_USERNAME}/functest-kubernetes-security:hunter - stage: build functest-kubernetes-smoke image - script: sudo -E bash build.sh + script: bash build.sh env: - REPO="${DOCKER_USERNAME}" - amd64_dirs="docker/smoke" + - arm_dirs="" + - arm64_dirs="" + - script: bash build.sh + env: + - REPO="${DOCKER_USERNAME}" + - amd64_dirs="" + - arm_dirs="docker/smoke" - arm64_dirs="" + - script: bash build.sh + env: + - REPO="${DOCKER_USERNAME}" + - amd64_dirs="" + - arm_dirs="" + - arm64_dirs="docker/smoke" - stage: publish functest-kubernetes-smoke manifests script: > - sudo manifest-tool push from-args \ - --platforms linux/amd64 \ + manifest-tool push from-args \ + --platforms linux/amd64,linux/arm,linux/arm64 \ --template ${DOCKER_USERNAME}/functest-kubernetes-smoke:ARCH-hunter \ --target ${DOCKER_USERNAME}/functest-kubernetes-smoke:hunter -- cgit 1.2.3-korg