2019-02-28 13:27:32 +00:00
|
|
|
version: 2
|
|
|
|
|
|
|
|
.emulated_job: &defaultjob
|
|
|
|
machine: true
|
|
|
|
steps:
|
|
|
|
- checkout
|
2019-04-18 08:19:24 +01:00
|
|
|
- run: &checkouttask
|
2019-04-05 09:45:06 +01:00
|
|
|
name: Pull submodules
|
|
|
|
command: |
|
|
|
|
git submodule init
|
|
|
|
git submodule update
|
2019-04-18 08:19:24 +01:00
|
|
|
git checkout $CIRCLECI_BRANCH
|
|
|
|
git reset --hard $CIRCLECI_SHA1
|
2019-02-28 13:27:32 +00:00
|
|
|
- run:
|
|
|
|
name: Install the emulation handlers
|
|
|
|
command: docker run --rm --privileged multiarch/qemu-user-static:register --reset
|
|
|
|
- run:
|
|
|
|
name: Run the tests in a container
|
|
|
|
command: |
|
2019-04-16 13:17:18 +01:00
|
|
|
docker run -e CI=true -e PQCLEAN_ONLY_DIFF=1 --rm -v `pwd`:`pwd` -w `pwd` "pqclean/ci-container:$ARCH" /bin/bash -c "
|
2019-02-28 13:27:32 +00:00
|
|
|
uname -a &&
|
|
|
|
export CC=${CC} &&
|
2019-04-05 11:51:35 +01:00
|
|
|
pip3 install -r requirements.txt &&
|
2019-04-18 10:16:47 +01:00
|
|
|
mkdir test-results &&
|
2019-04-18 13:05:01 +01:00
|
|
|
cd test && python3 -m nose --rednose --verbose --with-xunit --xunit-file=../test-results/nosetests.xml"
|
2019-04-18 10:16:47 +01:00
|
|
|
- store_test_results:
|
|
|
|
path: test-results
|
2019-02-28 13:27:32 +00:00
|
|
|
|
|
|
|
.native_job: &nativejob
|
|
|
|
docker:
|
|
|
|
- image: pqclean/ci-container:$ARCH
|
|
|
|
steps:
|
|
|
|
- checkout
|
2019-04-05 09:45:06 +01:00
|
|
|
- run:
|
2019-04-18 08:19:24 +01:00
|
|
|
<<: *checkouttask
|
2019-02-28 13:27:32 +00:00
|
|
|
- run:
|
|
|
|
name: Run tests
|
|
|
|
command: |
|
|
|
|
export CC=${CC}
|
2019-04-16 13:17:18 +01:00
|
|
|
export PQCLEAN_ONLY_DIFF=1
|
2019-04-18 10:16:47 +01:00
|
|
|
pip3 install -r requirements.txt
|
|
|
|
mkdir test-results
|
|
|
|
cd test
|
2019-04-18 13:05:01 +01:00
|
|
|
python3 -m nose --rednose --verbose --with-xunit --xunit-file=../test-results/nosetests.xml
|
2019-04-18 10:16:47 +01:00
|
|
|
- store_test_results:
|
|
|
|
path: test-results
|
2019-02-28 13:27:32 +00:00
|
|
|
|
|
|
|
jobs:
|
|
|
|
arm64-gcc:
|
|
|
|
<<: *defaultjob
|
|
|
|
environment:
|
|
|
|
CC: gcc
|
|
|
|
ARCH: arm64
|
|
|
|
arm64-clang:
|
|
|
|
<<: *defaultjob
|
|
|
|
environment:
|
|
|
|
CC: clang
|
|
|
|
ARCH: arm64
|
|
|
|
arm32-gcc:
|
|
|
|
<<: *defaultjob
|
|
|
|
environment:
|
|
|
|
CC: gcc
|
|
|
|
ARCH: armhf
|
|
|
|
arm32-clang:
|
|
|
|
<<: *defaultjob
|
|
|
|
environment:
|
|
|
|
CC: clang
|
|
|
|
ARCH: armhf
|
|
|
|
ppc-clang:
|
|
|
|
<<: *defaultjob
|
|
|
|
environment:
|
|
|
|
CC: clang
|
|
|
|
ARCH: unstable-ppc
|
|
|
|
ppc-gcc:
|
|
|
|
<<: *defaultjob
|
|
|
|
environment:
|
|
|
|
CC: gcc
|
|
|
|
ARCH: unstable-ppc
|
|
|
|
amd64-gcc:
|
|
|
|
<<: *nativejob
|
|
|
|
environment:
|
|
|
|
CC: gcc
|
|
|
|
ARCH: amd64
|
|
|
|
amd64-clang:
|
|
|
|
<<: *nativejob
|
|
|
|
environment:
|
|
|
|
CC: gcc
|
|
|
|
ARCH: amd64
|
|
|
|
i386-gcc:
|
|
|
|
<<: *nativejob
|
|
|
|
environment:
|
|
|
|
CC: gcc
|
|
|
|
ARCH: i386
|
|
|
|
i386-clang:
|
|
|
|
<<: *nativejob
|
|
|
|
environment:
|
|
|
|
CC: gcc
|
|
|
|
ARCH: i386
|
|
|
|
|
|
|
|
workflows:
|
|
|
|
version: 2
|
|
|
|
build:
|
|
|
|
jobs:
|
|
|
|
- arm64-gcc
|
|
|
|
- arm64-clang
|
|
|
|
- arm32-gcc
|
|
|
|
- arm32-clang
|
|
|
|
- ppc-gcc
|
|
|
|
- ppc-clang
|
|
|
|
- amd64-gcc
|
|
|
|
- amd64-clang
|
|
|
|
- i386-gcc
|
|
|
|
- i386-clang
|
|
|
|
|
|
|
|
# vim: set ft=yaml ts=2 sw=2 tw=0 et :
|