diff options
author | Edward Thomson <ethomson@edwardthomson.com> | 2018-10-21 09:15:24 +0100 |
---|---|---|
committer | Edward Thomson <ethomson@edwardthomson.com> | 2018-10-21 10:37:26 +0100 |
commit | 0e521abd3fff87bd2be6707052f72cf89b49391c (patch) | |
tree | f9042b8bab80082193286b839b7a194ed3b0a594 | |
parent | 28f05585a31ffbd723b6e4356df44d3085709644 (diff) | |
download | libgit2-0e521abd3fff87bd2be6707052f72cf89b49391c.tar.gz |
ci: introduce nightly arm docker builds
Use multiarch arm32 and arm64 docker images to run Xenial-based images
for those platforms. We can support all the tests on ARM32 and 64
_except_ the proxy-based tests. Our proxy on ARM seems regrettably
unstable, either due to some shoddy dependencies (with native code?)
or the JREs themselves.
Run these platforms as part of our nightly builds; do not run them
during pull request or CI validation.
-rw-r--r-- | azure-pipelines/docker.yml | 4 | ||||
-rw-r--r-- | azure-pipelines/nightly.yml | 28 |
2 files changed, 32 insertions, 0 deletions
diff --git a/azure-pipelines/docker.yml b/azure-pipelines/docker.yml index e92510478..2744a63ae 100644 --- a/azure-pipelines/docker.yml +++ b/azure-pipelines/docker.yml @@ -1,5 +1,9 @@ # These are the steps used in a container-based build in VSTS. steps: +- ${{ if eq(parameters.qemu, 'true') }}: + - script: docker run --rm --privileged multiarch/qemu-user-static:register --reset + displayName: 'Register Docker QEMU' + - task: docker@0 displayName: Build inputs: diff --git a/azure-pipelines/nightly.yml b/azure-pipelines/nightly.yml index 4d6d8a3e8..ab499a640 100644 --- a/azure-pipelines/nightly.yml +++ b/azure-pipelines/nightly.yml @@ -2,6 +2,34 @@ resources: - repo: self jobs: +- job: linux_arm32_xenial_gcc_openssl + displayName: 'Linux (arm32; Xenial; GCC; OpenSSL)' + pool: + vmImage: 'Ubuntu 16.04' + steps: + - template: docker.yml + parameters: + qemu: 'true' + imageName: 'libgit2/xenial-arm32:test' + environmentVariables: | + CC=gcc + CMAKE_OPTIONS=-DUSE_HTTPS=OpenSSL + SKIP_PROXY_TESTS=true + +- job: linux_arm64_xenial_gcc_openssl + displayName: 'Linux (arm64; Xenial; GCC; OpenSSL)' + pool: + vmImage: 'Ubuntu 16.04' + steps: + - template: docker.yml + parameters: + qemu: 'true' + imageName: 'libgit2/xenial-arm64:test' + environmentVariables: | + CC=gcc + CMAKE_OPTIONS=-DUSE_HTTPS=OpenSSL + SKIP_PROXY_TESTS=true + - job: coverity displayName: 'Coverity' pool: |