1
1
mirror of https://github.com/henrydcase/pqc.git synced 2024-11-22 23:48:58 +00:00

Run ARM64 tests on REAL HARDWARE 🎉

This commit is contained in:
Thom Wiggers 2019-10-17 12:14:23 +02:00 committed by Kris Kwiatkowski
parent 071e541af7
commit 81a7e48d37
2 changed files with 97 additions and 75 deletions

View File

@ -52,18 +52,6 @@ version: 2.1
jobs: jobs:
# First the KEM jobs # First the KEM jobs
arm64-gcc-kem:
<<: *defaultjob
environment:
CC: gcc
ARCH: arm64
PQCLEAN_ONLY_TYPES: kem
arm64-clang-kem:
<<: *defaultjob
environment:
CC: clang
ARCH: arm64
PQCLEAN_ONLY_TYPES: kem
arm32-gcc-kem: arm32-gcc-kem:
<<: *defaultjob <<: *defaultjob
environment: environment:
@ -113,20 +101,6 @@ jobs:
ARCH: i386 ARCH: i386
PQCLEAN_ONLY_TYPES: kem PQCLEAN_ONLY_TYPES: kem
# These are for the scheduled builds # These are for the scheduled builds
arm64-gcc-slow-kem:
<<: *defaultjob
environment:
CC: gcc
ARCH: arm64
PQCLEAN_ONLY_TYPES: kem
RUN_SLOW: 1
arm64-clang-slow-kem:
<<: *defaultjob
environment:
CC: clang
ARCH: arm64
PQCLEAN_ONLY_TYPES: kem
RUN_SLOW: 1
arm32-gcc-slow-kem: arm32-gcc-slow-kem:
<<: *defaultjob <<: *defaultjob
environment: environment:
@ -184,18 +158,6 @@ jobs:
RUN_SLOW: 1 RUN_SLOW: 1
PQCLEAN_ONLY_TYPES: kem PQCLEAN_ONLY_TYPES: kem
# the Sign jobs # the Sign jobs
arm64-gcc-sign:
<<: *defaultjob
environment:
CC: gcc
ARCH: arm64
PQCLEAN_ONLY_TYPES: sign
arm64-clang-sign:
<<: *defaultjob
environment:
CC: clang
ARCH: arm64
PQCLEAN_ONLY_TYPES: sign
arm32-gcc-sign: arm32-gcc-sign:
<<: *defaultjob <<: *defaultjob
environment: environment:
@ -245,20 +207,6 @@ jobs:
ARCH: i386 ARCH: i386
PQCLEAN_ONLY_TYPES: sign PQCLEAN_ONLY_TYPES: sign
# These are for the scheduled builds # These are for the scheduled builds
arm64-gcc-slow-sign:
<<: *defaultjob
environment:
CC: gcc
ARCH: arm64
PQCLEAN_ONLY_TYPES: sign
RUN_SLOW: 1
arm64-clang-slow-sign:
<<: *defaultjob
environment:
CC: clang
ARCH: arm64
PQCLEAN_ONLY_TYPES: sign
RUN_SLOW: 1
arm32-gcc-slow-sign: arm32-gcc-slow-sign:
<<: *defaultjob <<: *defaultjob
environment: environment:
@ -338,26 +286,13 @@ workflows:
<<: *i386 <<: *i386
- i386-clang-sign: - i386-clang-sign:
<<: *i386 <<: *i386
# ARMv8
- arm64-gcc-kem: &arm64
requires:
- i386-gcc-kem
- i386-gcc-sign
- i386-clang-sign
- i386-clang-kem
- arm64-gcc-sign:
<<: *arm64
- arm64-clang-kem:
<<: *arm64
- arm64-clang-sign:
<<: *arm64
# ARM 32 bit # ARM 32 bit
- arm32-gcc-kem: &arm32 - arm32-gcc-kem: &arm32
requires: requires:
- arm64-gcc-kem - i386-gcc-kem
- arm64-gcc-sign - i386-gcc-sign
- arm64-clang-kem - i386-clang-kem
- arm64-clang-sign - i386-clang-sign
- arm32-clang-kem: - arm32-clang-kem:
<<: *arm32 <<: *arm32
- arm32-gcc-sign: - arm32-gcc-sign:
@ -393,12 +328,6 @@ workflows:
- arm32-clang-slow-sign - arm32-clang-slow-sign
- arm32-gcc-slow-kem - arm32-gcc-slow-kem
- arm32-gcc-slow-sign - arm32-gcc-slow-sign
- arm64-clang-slow-kem
- arm64-clang-slow-sign
- arm64-gcc-slow-kem
- arm64-gcc-slow-kem
- arm64-gcc-slow-sign
- arm64-gcc-slow-sign
- i386-clang-slow-kem - i386-clang-slow-kem
- i386-clang-slow-sign - i386-clang-slow-sign
- i386-gcc-slow-kem - i386-gcc-slow-kem

View File

@ -2,6 +2,99 @@ language: c
matrix: matrix:
include: include:
# Arm64 builds
- name: "KEMs: ARM64 + GCC"
os: linux
arch: arm64
compiler: gcc
before_script:
- export COMMIT=$(git rev-parse HEAD)
- git config --replace-all remote.origin.fetch +refs/heads/*:refs/remotes/origin/*
- git fetch --unshallow
- git checkout $TRAVIS_BRANCH
- git reset --hard $COMMIT
script:
- travis_wait 60 docker run -e CI=true -e PQCLEAN_ONLY_TYPES -e PQCLEAN_ONLY_DIFF --rm -v `pwd`:`pwd` -w `pwd` "pqclean/ci-container:arm64" /bin/bash -c "
uname -a &&
export CC=${CC} &&
pip3 install -r requirements.txt &&
mkdir test-results &&
cd test && python3 -m pytest --verbose --junitxml=test-results/pytest/results.xml --numprocesses=auto"
env:
PQCLEAN_ONLY_TYPES: kem
PQCLEAN_ONLY_DIFF: 1
services:
- docker
- name: "KEMs: ARM64 + Clang"
os: linux
arch: arm64
compiler: clang
before_script:
- export COMMIT=$(git rev-parse HEAD)
- git config --replace-all remote.origin.fetch +refs/heads/*:refs/remotes/origin/*
- git fetch --unshallow
- git checkout $TRAVIS_BRANCH
- git reset --hard $COMMIT
script:
- travis_wait 60 docker run -e CI=true -e PQCLEAN_ONLY_TYPES -e PQCLEAN_ONLY_DIFF --rm -v `pwd`:`pwd` -w `pwd` "pqclean/ci-container:arm64" /bin/bash -c "
uname -a &&
export CC=${CC} &&
pip3 install -r requirements.txt &&
mkdir test-results &&
cd test && python3 -m pytest --verbose --junitxml=test-results/pytest/results.xml --numprocesses=auto"
env:
PQCLEAN_ONLY_TYPES: kem
PQCLEAN_ONLY_DIFF: 1
services:
- docker
- name: "Signs: ARM64 + GCC"
os: linux
arch: arm64
compiler: gcc
before_script:
- export COMMIT=$(git rev-parse HEAD)
- git config --replace-all remote.origin.fetch +refs/heads/*:refs/remotes/origin/*
- git fetch --unshallow
- git checkout $TRAVIS_BRANCH
- git reset --hard $COMMIT
script:
- travis_wait 60 docker run -e CI=true -e PQCLEAN_ONLY_TYPES -e PQCLEAN_ONLY_DIFF -e PQCLEAN_SKIP_SCHEMES --rm -v `pwd`:`pwd` -w `pwd` "pqclean/ci-container:arm64" /bin/bash -c "
uname -a &&
export CC=${CC} &&
pip3 install -r requirements.txt &&
mkdir test-results &&
cd test && python3 -m pytest --verbose --junitxml=test-results/pytest/results.xml --numprocesses=auto"
env:
PQCLEAN_ONLY_TYPES: sign
PQCLEAN_ONLY_DIFF: 1
PQCLEAN_SKIP_SCHEMES: sphincs-haraka-128f-robust,sphincs-haraka-192s-robust,sphincs-sha256-128f-robust,sphincs-sha256-192s-robust,sphincs-shake256-128f-robust,sphincs-shake256-192s-robust,sphincs-haraka-128f-simple,sphincs-haraka-192s-simple,sphincs-sha256-128f-simple,sphincs-sha256-192s-simple,sphincs-shake256-128f-simple,sphincs-shake256-192s-simple,sphincs-haraka-128s-robust,sphincs-haraka-256f-robust,sphincs-sha256-128s-robust,sphincs-sha256-256f-robust,sphincs-shake256-128s-robust,sphincs-shake256-256f-robust,sphincs-haraka-128s-simple,sphincs-haraka-256f-simple,sphincs-sha256-128s-simple,sphincs-sha256-256f-simple,sphincs-shake256-128s-simple,sphincs-shake256-256f-simple,sphincs-haraka-192f-robust,sphincs-haraka-256s-robust,sphincs-sha256-192f-robust,sphincs-sha256-256s-robust,sphincs-shake256-192f-robust,sphincs-shake256-256s-robust,sphincs-haraka-192f-simple,sphincs-haraka-256s-simple,sphincs-sha256-192f-simple,sphincs-sha256-256s-simple,sphincs-shake256-192f-simple,sphincs-shake256-256s-simple
services:
- docker
- name: "signs: ARM64 + Clang"
os: linux
arch: arm64
compiler: clang
before_script:
- export COMMIT=$(git rev-parse HEAD)
- git config --replace-all remote.origin.fetch +refs/heads/*:refs/remotes/origin/*
- git fetch --unshallow
- git checkout $TRAVIS_BRANCH
- git reset --hard $COMMIT
script:
- travis_wait 60 docker run -e CI=true -e PQCLEAN_ONLY_TYPES -e PQCLEAN_ONLY_DIFF=1 -e PQCLEAN_SKIP_SCHEMES --rm -v `pwd`:`pwd` -w `pwd` "pqclean/ci-container:arm64" /bin/bash -c "
uname -a &&
export CC=${CC} &&
pip3 install -r requirements.txt &&
mkdir test-results &&
cd test && python3 -m pytest --verbose --junitxml=test-results/pytest/results.xml --numprocesses=auto"
env:
PQCLEAN_ONLY_TYPES: sign
PQCLEAN_ONLY_DIFF: 1
PQCLEAN_SKIP_SCHEMES: sphincs-haraka-128f-robust,sphincs-haraka-192s-robust,sphincs-sha256-128f-robust,sphincs-sha256-192s-robust,sphincs-shake256-128f-robust,sphincs-shake256-192s-robust,sphincs-haraka-128f-simple,sphincs-haraka-192s-simple,sphincs-sha256-128f-simple,sphincs-sha256-192s-simple,sphincs-shake256-128f-simple,sphincs-shake256-192s-simple,sphincs-haraka-128s-robust,sphincs-haraka-256f-robust,sphincs-sha256-128s-robust,sphincs-sha256-256f-robust,sphincs-shake256-128s-robust,sphincs-shake256-256f-robust,sphincs-haraka-128s-simple,sphincs-haraka-256f-simple,sphincs-sha256-128s-simple,sphincs-sha256-256f-simple,sphincs-shake256-128s-simple,sphincs-shake256-256f-simple,sphincs-haraka-192f-robust,sphincs-haraka-256s-robust,sphincs-sha256-192f-robust,sphincs-sha256-256s-robust,sphincs-shake256-192f-robust,sphincs-shake256-256s-robust,sphincs-haraka-192f-simple,sphincs-haraka-256s-simple,sphincs-sha256-192f-simple,sphincs-sha256-256s-simple,sphincs-shake256-192f-simple,sphincs-shake256-256s-simple
services:
- docker
# MacOS builds
- name: "KEMs: MacOS + Clang" - name: "KEMs: MacOS + Clang"
os: osx os: osx
osx_image: xcode11.2 osx_image: xcode11.2