This is an automated email from the ASF dual-hosted git repository.

mssun pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/incubator-teaclave.git

commit def8b105fefa3828a89f5ff4e19226060a1af4b7
Author: Mingshen Sun <[email protected]>
AuthorDate: Fri Feb 7 22:32:10 2020 -0800

    [ci] Enable dcap
---
 .drone.yml                               |  68 ++++++++++++++++++++
 docker/build.ubuntu-1804.dcap.Dockerfile | 104 +++++++++++++++++++++++++++++++
 2 files changed, 172 insertions(+)

diff --git a/.drone.yml b/.drone.yml
index fbf0495..5fa934e 100644
--- a/.drone.yml
+++ b/.drone.yml
@@ -51,6 +51,74 @@ node:
 ---
 
 kind: pipeline
+name: sgx-dcap-debug-ubuntu-1804
+
+steps:
+- name: prepare
+  image: teaclave/teaclave-build-ubuntu-1804-dcap:0.1.0
+  commands:
+  - . /root/.cargo/env
+  - mkdir -p build
+  - cd build && cmake -DCMAKE_BUILD_TYPE=Debug -DTEST_MODE=ON ..
+- name: check
+  image: teaclave/teaclave-build-ubuntu-1804-dcap:0.1.0
+  commands:
+  - . /root/.cargo/env
+  - cd build && make check
+- name: compile
+  image: teaclave/teaclave-build-ubuntu-1804-dcap: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 dcap && cargo build)
+  - cd build && make VERBOSE=1 -j2
+- name: test
+  image: teaclave/teaclave-build-ubuntu-1804-dcap: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:
+  - apt-get update && apt-get install -y iputils-ping iproute2 curl
+  - echo "$(ip route | awk 'NR==1 {print $3}') pccs-server" >> /etc/hosts
+  - . /root/.cargo/env
+  - (cd dcap && target/debug/teaclave_dcap_ref_as &)
+  - cd build && make run-test
+
+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:
diff --git a/docker/build.ubuntu-1804.dcap.Dockerfile 
b/docker/build.ubuntu-1804.dcap.Dockerfile
new file mode 100644
index 0000000..ddc3fd5
--- /dev/null
+++ b/docker/build.ubuntu-1804.dcap.Dockerfile
@@ -0,0 +1,104 @@
+FROM ubuntu:18.04
+
+ENV SGX_DOWNLOAD_URL_BASE 
"https://download.01.org/intel-sgx/sgx-dcap/1.3.1/linux/distro/ubuntuServer18.04";
+
+ENV SGX_LINUX_X64_SDK               sgx_linux_x64_sdk_2.7.101.3.bin
+ENV LIBSGX_ENCLAVE_COMMON           
libsgx-enclave-common_2.7.101.3-bionic1_amd64.deb
+ENV LIBSGX_ENCLAVE_COMMON_DEV       
libsgx-enclave-common-dev_2.7.101.3-bionic1_amd64.deb
+ENV LIBSGX_ENCLAVE_COMMON_DBGSYM    
libsgx-enclave-common-dbgsym_2.7.101.3-bionic1_amd64.ddeb
+ENV LIBSGX_DCAP_QL                  libsgx-dcap-ql_1.3.101.3-bionic1_amd64.deb
+ENV LIBSGX_DCAP_QL_DEV              
libsgx-dcap-ql-dev_1.3.101.3-bionic1_amd64.deb
+ENV LIBSGX_DCAP_DEFAULT_QPL         
libsgx-dcap-default-qpl_1.3.101.3-bionic1_amd64.deb
+ENV LIBSGX_DCAP_DEFAULT_QPL_DEV     
libsgx-dcap-default-qpl-dev_1.3.101.3-bionic1_amd64.deb
+ENV LIBSGX_DCAP_DEFAULT_QPL_DEV_DBG 
libsgx-dcap-default-qpl-dbg_1.3.101.3-bionic1_amd64.deb
+
+ENV SGX_LINUX_X64_SDK_URL               
"$SGX_DOWNLOAD_URL_BASE/$SGX_LINUX_X64_SDK"
+ENV LIBSGX_ENCLAVE_COMMON_URL           
"$SGX_DOWNLOAD_URL_BASE/$LIBSGX_ENCLAVE_COMMON"
+ENV LIBSGX_ENCLAVE_COMMON_DEV_URL       
"$SGX_DOWNLOAD_URL_BASE/$LIBSGX_ENCLAVE_COMMON_DEV"
+ENV LIBSGX_ENCLAVE_COMMON_DBGSYM_URL    
"$SGX_DOWNLOAD_URL_BASE/$LIBSGX_ENCLAVE_COMMON_DBGSYM"
+ENV LIBSGX_DCAP_QL_URL                  
"$SGX_DOWNLOAD_URL_BASE/$LIBSGX_DCAP_QL"
+ENV LIBSGX_DCAP_QL_DEV_URL              
"$SGX_DOWNLOAD_URL_BASE/$LIBSGX_DCAP_QL_DEV"
+ENV LIBSGX_DCAP_DEFAULT_QPL_URL         
"$SGX_DOWNLOAD_URL_BASE/$LIBSGX_DCAP_DEFAULT_QPL"
+ENV LIBSGX_DCAP_DEFAULT_QPL_DEV_URL     
"$SGX_DOWNLOAD_URL_BASE/$LIBSGX_DCAP_DEFAULT_QPL_DEV"
+ENV LIBSGX_DCAP_DEFAULT_QPL_DEV_DBG_URL 
"$SGX_DOWNLOAD_URL_BASE/$LIBSGX_DCAP_DEFAULT_QPL_DEV_DBG"
+
+ENV DEBIAN_FRONTEND=noninteractive
+
+ENV RUST_TOOLCHAIN nightly-2019-11-25
+
+# install SGX dependencies
+RUN apt-get update && apt-get install -q -y \
+    build-essential \
+    ocaml \
+    ocamlbuild \
+    automake \
+    autoconf \
+    libtool \
+    wget \
+    python \
+    python3 \
+    libssl-dev \
+    libcurl4-openssl-dev \
+    libprotobuf-dev
+
+RUN mkdir ~/sgx                                                               
&& \
+    mkdir /etc/init                                                           
&& \
+    cd ~/sgx                                                                  
&& \
+    wget -O $LIBSGX_ENCLAVE_COMMON        "$LIBSGX_ENCLAVE_COMMON_URL"        
&& \
+    wget -O $LIBSGX_ENCLAVE_COMMON_DEV    "$LIBSGX_ENCLAVE_COMMON_DEV_URL"    
&& \
+    wget -O $LIBSGX_ENCLAVE_COMMON_DBGSYM "$LIBSGX_ENCLAVE_COMMON_DBGSYM_URL" 
&& \
+    wget -O $SGX_LINUX_X64_SDK            "$SGX_LINUX_X64_SDK_URL"            
&& \
+    wget -O $LIBSGX_DCAP_QL               "$LIBSGX_DCAP_QL_URL"               
&& \
+    wget -O $LIBSGX_DCAP_QL_DEV           "$LIBSGX_DCAP_QL_DEV_URL"           
&& \
+    wget -O $LIBSGX_DCAP_DEFAULT_QPL      "$LIBSGX_DCAP_DEFAULT_QPL_URL"      
&& \
+    wget -O $LIBSGX_DCAP_DEFAULT_QPL_DEV  "$LIBSGX_DCAP_DEFAULT_QPL_DEV_URL"  
&& \
+    wget -O $LIBSGX_DCAP_DEFAULT_QPL_DEV_DBG 
"$LIBSGX_DCAP_DEFAULT_QPL_DEV_DBG_URL"
+
+RUN cd ~/sgx                                  && \
+    dpkg -i $LIBSGX_ENCLAVE_COMMON            && \
+    dpkg -i $LIBSGX_ENCLAVE_COMMON_DEV        && \
+    dpkg -i $LIBSGX_ENCLAVE_COMMON_DBGSYM     && \
+    dpkg -i $LIBSGX_DCAP_QL                   && \
+    dpkg -i $LIBSGX_DCAP_QL_DEV               && \
+    dpkg -i $LIBSGX_DCAP_DEFAULT_QPL          && \
+    dpkg -i $LIBSGX_DCAP_DEFAULT_QPL_DEV      && \
+    dpkg -i $LIBSGX_DCAP_DEFAULT_QPL_DEV_DBG  && \
+    chmod u+x $SGX_LINUX_X64_SDK              && \
+    echo -e 'no\n/opt' | ./$SGX_LINUX_X64_SDK && \
+    echo 'source /opt/sgxsdk/environment' >> ~/.bashrc
+
+RUN rm -rf ~/sgx
+
+# install Rust and its dependencies
+
+RUN apt-get update && apt-get install -q -y curl pkg-config
+
+RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y   
&& \
+    . $HOME/.cargo/env                                                        
&& \
+    rustup default $RUST_TOOLCHAIN                                            
&& \
+    rustup component add rust-src rls rust-analysis clippy rustfmt            
&& \
+    echo 'source $HOME/.cargo/env' >> ~/.bashrc                               
&& \
+    cargo install xargo                                                       
&& \
+    rm -rf /root/.cargo/registry && rm -rf /root/.cargo/git
+
+# install other dependencies for building
+
+RUN apt-get update && apt-get install -q -y \
+    git \
+    cmake \
+    pypy \
+    pypy-dev
+
+# install dependencies for testing and coverage
+
+RUN apt-get update && apt-get install -q -y \
+    lsof \
+    procps \
+    lcov \
+    llvm \
+    curl
+
+# clean up apt caches
+
+RUN apt-get clean && \
+    rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to