diff options
author | Cédric Ollivier <cedric.ollivier@orange.com> | 2017-10-11 05:29:11 +0200 |
---|---|---|
committer | Cédric Ollivier <cedric.ollivier@orange.com> | 2017-10-12 14:14:20 +0200 |
commit | ed777b643b05fbb71851df0b883483e0bcaa4ac1 (patch) | |
tree | bce5490bbcf9fe4b31cceb0b516c7973a85071fc /.travis.yml | |
parent | cb52dd523c58a6567b53ea5b79169295e1471117 (diff) |
Allow building aarch64 images
It must be noted that Docker automated build cannot create these
images as the prerequisites are unmet to cross-compile [1].
It also publishes a travis config file [2].
[1] https://www.kernel.org/doc/html/v4.11/admin-guide/binfmt-misc.html
[2] https://travis-ci.org/collivier/functest/builds/286932633
Change-Id: I11fdef410cc40989132205a098410175f789fdef
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
Diffstat (limited to '.travis.yml')
-rw-r--r-- | .travis.yml | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 00000000..af67f478 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,133 @@ +sudo: required +language: bash +services: docker +language: generic + +before_script: + - sudo apt-get -y install qemu-user-static + - sudo -E docker login -u="${DOCKER_USERNAME}" -p="${DOCKER_PASSWORD}" + - (cd .. && git clone https://github.com/estesp/manifest-tool) + - (cd ../manifest-tool && sudo -E make && sudo -E make install) + +jobs: + include: + - stage: build functest-core images + script: sudo -E bash build.sh + env: + - repo="${DOCKER_USERNAME}" + - x86_64_dirs="" + - aarch64_dirs="docker/core" + - script: sudo -E bash build.sh + env: + - repo="${DOCKER_USERNAME}" + - x86_64_dirs="docker/core" + - aarch64_dirs="" + - stage: publish functest-core manifests + script: > + sudo manifest-tool push from-args \ + --platforms linux/amd64,linux/arm64 \ + --template ${DOCKER_USERNAME}/functest-core:x86_64-latest \ + --template ${DOCKER_USERNAME}/functest-core:aarch64-latest \ + --target ${DOCKER_USERNAME}/functest-core:latest + - stage: build all functest images + script: sudo -E bash build.sh + env: + - repo="${DOCKER_USERNAME}" + - x86_64_dirs="" + - aarch64_dirs="docker/healthcheck" + - script: sudo -E bash build.sh + env: + - repo="${DOCKER_USERNAME}" + - x86_64_dirs="" + - aarch64_dirs="docker/smoke" + - script: sudo -E bash build.sh + env: + - repo="${DOCKER_USERNAME}" + - x86_64_dirs="" + - aarch64_dirs="docker/features" + - script: sudo -E bash build.sh + env: + - repo="${DOCKER_USERNAME}" + - x86_64_dirs="" + - aarch64_dirs="docker/components" + - script: sudo -E bash build.sh + env: + - repo="${DOCKER_USERNAME}" + - x86_64_dirs="docker/healthcheck" + - aarch64_dirs="" + - script: sudo -E bash build.sh + env: + - repo="${DOCKER_USERNAME}" + - x86_64_dirs="docker/smoke" + - aarch64_dirs="" + - script: sudo -E bash build.sh + env: + - repo="${DOCKER_USERNAME}" + - x86_64_dirs="docker/features" + - aarch64_dirs="" + - script: sudo -E bash build.sh + env: + - repo="${DOCKER_USERNAME}" + - x86_64_dirs="docker/components" + - aarch64_dirs="" + - script: sudo -E bash build.sh + env: + - repo="${DOCKER_USERNAME}" + - x86_64_dirs="docker/vnf" + - aarch64_dirs="" + - script: sudo -E bash build.sh + env: + - repo="${DOCKER_USERNAME}" + - x86_64_dirs="docker/restapi" + - aarch64_dirs="" + - script: sudo -E bash build.sh + env: + - repo="${DOCKER_USERNAME}" + - x86_64_dirs="docker/parser" + - aarch64_dirs="" + - stage: publish all manifests + script: > + sudo manifest-tool push from-args \ + --platforms linux/amd64,linux/arm64 \ + --template ${DOCKER_USERNAME}/functest-healthcheck:x86_64-latest \ + --template ${DOCKER_USERNAME}/functest-healthcheck:aarch64-latest \ + --target ${DOCKER_USERNAME}/functest-healthcheck:latest + - script: > + sudo manifest-tool push from-args \ + --platforms linux/amd64,linux/arm64 \ + --template ${DOCKER_USERNAME}/functest-healthcheck:x86_64-latest \ + --template ${DOCKER_USERNAME}/functest-healthcheck:aarch64-latest \ + --target ${DOCKER_USERNAME}/functest-healthcheck:latest + - script: > + sudo manifest-tool push from-args \ + --platforms linux/amd64,linux/arm64 \ + --template ${DOCKER_USERNAME}/functest-smoke:x86_64-latest \ + --template ${DOCKER_USERNAME}/functest-smoke:aarch64-latest \ + --target ${DOCKER_USERNAME}/functest-smoke:latest + - script: > + sudo manifest-tool push from-args \ + --platforms linux/amd64,linux/arm64 \ + --template ${DOCKER_USERNAME}/functest-features:x86_64-latest \ + --template ${DOCKER_USERNAME}/functest-features:aarch64-latest \ + --target ${DOCKER_USERNAME}/functest-features:latest + - script: > + sudo manifest-tool push from-args \ + --platforms linux/amd64,linux/arm64 \ + --template ${DOCKER_USERNAME}/functest-components:x86_64-latest \ + --template ${DOCKER_USERNAME}/functest-components:aarch64-latest \ + --target ${DOCKER_USERNAME}/functest-components:latest + - script: > + sudo manifest-tool push from-args \ + --platforms linux/amd64 \ + --template ${DOCKER_USERNAME}/functest-vnf:x86_64-latest \ + --target ${DOCKER_USERNAME}/functest-vnf:latest + - script: > + sudo manifest-tool push from-args \ + --platforms linux/amd64 \ + --template ${DOCKER_USERNAME}/functest-restapi:x86_64-latest \ + --target ${DOCKER_USERNAME}/functest-restapi:latest + - script: > + sudo manifest-tool push from-args \ + --platforms linux/amd64 \ + --template ${DOCKER_USERNAME}/functest-parser:x86_64-latest \ + --target ${DOCKER_USERNAME}/functest-parser:latest |