blob: ad3b5315269bd435dcdacddf8e088df43b03e9b4 [file] [log] [blame]
kind: pipeline
name: sgx-debug-ubuntu-1804
steps:
- name: prepare
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- . /opt/sgxsdk/environment
- mkdir -p build
- cd build && cmake -DCMAKE_BUILD_TYPE=Debug -DTEST_MODE=ON ..
- name: check
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- cd build && make check
- name: compile
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- cd build && make VERBOSE=1 -j2
- name: test
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
environment:
AS_ALGO: sgx_epid
AS_URL: https://api.trustedservices.intel.com:443
AS_KEY:
from_secret: V5_KEY
AS_SPID:
from_secret: V5_SPID
privileged: true
volumes:
- name: isgx
path: /dev/isgx
- name: aesmd
path: /var/run/aesmd/aesm.socket
commands:
- . /root/.cargo/env
- cd build && make run-tests
volumes:
- name: isgx
host:
path: /dev/isgx
- name: aesmd
host:
path: /var/run/aesmd/aesm.socket
node:
instance: mesatee-sgx
---
kind: pipeline
name: sgx-dcap-debug-ubuntu-1804
steps:
- name: prepare
image: teaclave/teaclave-build-ubuntu-1804-sgx-dcap-1.6:0.1.0
commands:
- . /root/.cargo/env
- . /opt/sgxsdk/environment
- mkdir -p build
- cd build && cmake -DCMAKE_BUILD_TYPE=Debug -DTEST_MODE=ON -DDCAP=ON ..
- name: check
image: teaclave/teaclave-build-ubuntu-1804-sgx-dcap-1.6:0.1.0
commands:
- . /root/.cargo/env
- cd build && make check
- name: compile
image: teaclave/teaclave-build-ubuntu-1804-sgx-dcap-1.6:0.1.0
commands:
- . /root/.cargo/env
- . /opt/sgxsdk/environment
- sed -i 's/ias_root_ca_cert/dcap_root_ca_cert/' config/build.config.toml
- cd build && make VERBOSE=1 -j2
- name: test
image: teaclave/teaclave-build-ubuntu-1804-sgx-dcap-1.6:0.1.0
environment:
AS_ALGO: sgx_ecdsa
AS_URL: https://localhost:8080
AS_KEY:
from_secret: V5_KEY
AS_SPID:
from_secret: V5_SPID
privileged: true
volumes:
- name: sgx
path: /dev/sgx
- name: aesmd
path: /var/run/aesmd/aesm.socket
- name: aesmd-conf
path: /etc/aesmd.conf
- name: qcnl
path: /etc/sgx_default_qcnl.conf
commands:
- echo "$(ip route | awk 'NR==1 {print $3}') pccs-server" >> /etc/hosts
- . /root/.cargo/env
- (cd release/dcap && ./teaclave_dcap_ref_as &)
- cd build && make run-tests
volumes:
- name: sgx
host:
path: /dev/sgx
- name: aesmd
host:
path: /var/run/aesmd/aesm.socket
- name: aesmd-conf
host:
path: /etc/aesmd.conf
- name: qcnl
host:
path: /etc/sgx_default_qcnl.conf
node:
instance: mesatee-sgx-dcap
---
kind: pipeline
name: sgx-release-ubuntu-1804
steps:
- name: prepare
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- . /opt/sgxsdk/environment
- mkdir -p build
- cd build && cmake -DTEST_MODE=ON ..
- name: check
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- cd build && make check
- name: compile
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- cd build && cmake -DTEST_MODE=OFF .. && make VERBOSE=1 -j2
- name: compile-test-mode
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- cd build && cmake -DTEST_MODE=ON .. && make VERBOSE=1 -j2
- name: test
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
privileged: true
environment:
AS_ALGO: sgx_epid
AS_URL: https://api.trustedservices.intel.com:443
AS_KEY:
from_secret: V5_KEY
AS_SPID:
from_secret: V5_SPID
volumes:
- name: isgx
path: /dev/isgx
- name: aesmd
path: /var/run/aesmd/aesm.socket
commands:
- . /root/.cargo/env
- cd build && make run-tests
volumes:
- name: isgx
host:
path: /dev/isgx
- name: aesmd
host:
path: /var/run/aesmd/aesm.socket
node:
instance: mesatee-sgx
---
kind: pipeline
name: sim-debug-ubuntu-1804
steps:
- name: prepare
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- . /opt/sgxsdk/environment
- mkdir -p build
- cd build && cmake -DTEST_MODE=ON ..
- name: check
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- cd build && make check
- name: compile
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- cd build && cmake -DCMAKE_BUILD_TYPE=Debug -DSGX_SIM_MODE=ON .. && make VERBOSE=1 -j2
- name: test
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- cd build && make run-tests
node:
instance: mesatee-sgx
---
kind: pipeline
name: sim-release-ubuntu-1804
steps:
- name: prepare
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- . /opt/sgxsdk/environment
- mkdir -p build
- cd build && cmake -DTEST_MODE=YES ..
- name: check
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- cd build && make check
- name: compile
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- cd build && cmake -DSGX_SIM_MODE=ON .. && make VERBOSE=1 -j2
- name: test
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- cd build && make run-tests
node:
instance: mesatee-sgx
# ---
# kind: pipeline
# name: sgx-debug-ubuntu-1604
# steps:
# - name: prepare
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# commands:
# - . /root/.cargo/env
# - mkdir -p build
# - cd build && cmake -DCMAKE_BUILD_TYPE=Debug -DTEST_MODE=ON ..
# - name: check
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# commands:
# - . /root/.cargo/env
# - cd build && make check
# - name: compile
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# commands:
# - . /root/.cargo/env
# - cd build && make VERBOSE=1 -j2
# - name: test
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# environment:
# AS_ALGO: sgx_epid
# AS_URL: https://api.trustedservices.intel.com:443
# AS_KEY:
# from_secret: V5_KEY
# AS_SPID:
# from_secret: V5_SPID
# privileged: true
# volumes:
# - name: isgx
# path: /dev/isgx
# - name: aesmd
# path: /var/run/aesmd/aesm.socket
# commands:
# - . /root/.cargo/env
# - cd build && make run-tests
# volumes:
# - name: isgx
# host:
# path: /dev/isgx
# - name: aesmd
# host:
# path: /var/run/aesmd/aesm.socket
# node:
# instance: mesatee-sgx
# ---
# kind: pipeline
# name: sgx-release-ubuntu-1604
# steps:
# - name: prepare
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# commands:
# - . /root/.cargo/env
# - mkdir -p build
# - cd build && cmake -DTEST_MODE=ON ..
# - name: check
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# commands:
# - . /root/.cargo/env
# - cd build && make check
# - name: compile
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# commands:
# - . /root/.cargo/env
# - cd build && make VERBOSE=1 -j2
# - name: test
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# privileged: true
# environment:
# AS_ALGO: sgx_epid
# AS_URL: https://api.trustedservices.intel.com:443
# AS_KEY:
# from_secret: V5_KEY
# AS_SPID:
# from_secret: V5_SPID
# volumes:
# - name: isgx
# path: /dev/isgx
# - name: aesmd
# path: /var/run/aesmd/aesm.socket
# commands:
# - . /root/.cargo/env
# - cd build && make run-tests
# volumes:
# - name: isgx
# host:
# path: /dev/isgx
# - name: aesmd
# host:
# path: /var/run/aesmd/aesm.socket
# node:
# instance: mesatee-sgx
# ---
# kind: pipeline
# name: sim-debug-ubuntu-1604
# steps:
# - name: prepare
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# commands:
# - . /root/.cargo/env
# - mkdir -p build
# - cd build && cmake -DTEST_MODE=ON ..
# - name: check
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# commands:
# - . /root/.cargo/env
# - cd build && make check
# - name: compile
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# commands:
# - . /root/.cargo/env
# - cd build && cmake -DCMAKE_BUILD_TYPE=Debug -DSGX_SIM_MODE=ON .. && make VERBOSE=1 -j2
# - name: test
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# commands:
# - . /root/.cargo/env
# - cd build && make run-tests
# node:
# instance: mesatee-sgx
# ---
# kind: pipeline
# name: sim-release-ubuntu-1604
# steps:
# - name: prepare
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# commands:
# - . /root/.cargo/env
# - mkdir -p build
# - cd build && cmake ..
# - name: check
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# commands:
# - . /root/.cargo/env
# - cd build && make check
# - name: compile
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# commands:
# - . /root/.cargo/env
# - cd build && cmake -DSGX_SIM_MODE=ON -DTEST_MODE=ON .. && make VERBOSE=1 -j2
# - name: test
# image: teaclave/teaclave-build-ubuntu-1604:0.1.1
# commands:
# - . /root/.cargo/env
# - cd build && make run-tests
# node:
# instance: mesatee-sgx
---
kind: pipeline
name: lint
steps:
- name: prepare
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- . /opt/sgxsdk/environment
- mkdir -p build
- cd build && cmake -DRUSTFLAGS="-D warnings" -DTEST_MODE=ON ..
- name: check
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- cd build && make check
- name: clippy
image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
commands:
- . /root/.cargo/env
- cd build && make CLP=1
node:
instance: mesatee-sgx
# ---
# kind: pipeline
# name: coverage
# steps:
# - name: prepare
# image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
# commands:
# - . /root/.cargo/env
# - mkdir -p build
# - cd build && cmake -DCMAKE_BUILD_TYPE=DEBUG -DCOV=ON -DTEST_MODE=ON ..
# - name: check
# image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
# commands:
# - . /root/.cargo/env
# - cd build && make check
# - name: compile
# image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
# commands:
# - . /root/.cargo/env
# - export RUSTFLAGS="-D warnings"
# - cd build && make VERBOSE=1 -j2
# - name: test
# image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
# environment:
# AS_ALGO: sgx_epid
# AS_URL: https://api.trustedservices.intel.com:443
# AS_KEY:
# from_secret: V5_KEY
# AS_SPID:
# from_secret: V5_SPID
# privileged: true
# volumes:
# - name: isgx
# path: /dev/isgx
# - name: aesmd
# path: /var/run/aesmd/aesm.socket
# commands:
# - . /root/.cargo/env
# - cd build && make run-tests
# - name: coverage
# failure: ignore
# image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
# commands:
# - cd build && make cov
# - bash -c "bash <(curl -s https://codecov.io/bash) -f intermediate/cov.info"
# environment:
# CODECOV_TOKEN:
# from_secret: CODECOV_TOKEN
# volumes:
# - name: isgx
# host:
# path: /dev/isgx
# - name: aesmd
# host:
# path: /var/run/aesmd/aesm.socket
# trigger:
# branch:
# - master
# event:
# - push
# node:
# instance: mesatee-sgx
# ---
# kind: pipeline
# name: doc
# steps:
# - name: prepare
# image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
# commands:
# - . /root/.cargo/env
# - mkdir -p build
# - cd build && cmake ..
# - name: doc
# image: teaclave/teaclave-build-ubuntu-1804-sgx-2.9.1:0.1.0
# failure: ignore
# commands:
# - . /root/.cargo/env
# - cd build && make doc
# - mkdir -p ~/.ssh && echo $DOC_KEY | base64 -d > ~/.ssh/id_rsa && chmod 600 ~/.ssh/id_rsa
# - tar czf doc.tar.gz -C cmake_tomls/unix_app/target/ doc && ssh -i ~/.ssh/id_rsa -o StrictHostKeyChecking=no $DOC_USERNAME@$DOC_HOSTNAME "cd /home/ubuntu/www/mesatee.org && tar -xz" < doc.tar.gz
# environment:
# DOC_KEY:
# from_secret: DOC_KEY
# DOC_USERNAME:
# from_secret: DOC_USERNAME
# DOC_HOSTNAME:
# from_secret: DOC_HOSTNAME
# trigger:
# branch:
# - master
# event:
# - push
# node:
# instance: mesatee-sgx
---
kind: pipeline
name: notification
steps:
- name: notify
image: drillster/drone-email
settings:
username:
from_secret: EMAIL_USERNAME
password:
from_secret: EMAIL_PASSWORD
host:
from_secret: EMAIL_HOST
from:
from_secret: EMAIL_FROM
subject: >
[{{ build.status }}]
{{ repo.owner }}/{{ repo.name }}
({{ commit.branch }} - {{ truncate commit.sha 8 }})
when:
status:
- failure
- success
trigger:
status:
- failure
- success
cron:
exclude:
- hourly
depends_on:
- sgx-debug-ubuntu-1804
- sgx-dcap-debug-ubuntu-1804
- sgx-release-ubuntu-1804
- sim-debug-ubuntu-1804
- sim-release-ubuntu-1804
# - sgx-debug-ubuntu-1604
# - sgx-release-ubuntu-1604
# - sim-debug-ubuntu-1604
# - sim-release-ubuntu-1604
- lint
node:
instance: mesatee-sgx