Essential Test #1386
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Essential Test | |
on: | |
push: | |
pull_request: | |
schedule: | |
# Schedule to run everyday at 6PM UTC (2AM CST) | |
- cron: '0 18 * * *' | |
# Cancel previous running jobs on push or pull request | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref || github.event.pull_request.number }} | |
cancel-in-progress: true | |
jobs: | |
Make_test_on_ubuntu: | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v1 | |
with: | |
submodules: true | |
- name: Print info | |
run: echo Occlum build environment ${{ inputs.build-envs }} | |
shell: bash | |
- name: Get occlum version | |
run: echo "OCCLUM_VERSION=$(grep "Version =" src/pal/include/occlum_version.h | awk '{print $4}')" >> $GITHUB_ENV | |
shell: bash | |
- name: Create container | |
run: docker run -itd --name=${{ github.job }} -v $GITHUB_WORKSPACE:/root/occlum occlum/occlum:${{ env.OCCLUM_VERSION }}-ubuntu20.04 | |
shell: bash | |
- uses: ./.github/workflows/composite_action/prebuild | |
with: | |
container-name: ${{ github.job }} | |
- name: Build dependencies | |
run: docker exec ${{ github.job }} bash -c "cd /root/occlum; make submodule" | |
shell: bash | |
- name: Make install | |
run: docker exec ${{ github.job }} bash -c "source /opt/intel/sgxsdk/environment; cd /root/occlum; OCCLUM_RELEASE_BUILD=1 make install" | |
shell: bash | |
# - uses: ./.github/workflows/composite_action/sim | |
# with: | |
# container-name: ${{ github.job }} | |
# build-envs: 'OCCLUM_RELEASE_BUILD=1' | |
- name: Check format | |
run: docker exec ${{ github.job }} bash -c 'cd /root/occlum; info=$(make format-check); | |
if [[ -n $info ]]; then | |
echo "Format error detected."; | |
echo "$info"; | |
exit 1; | |
fi' | |
- name: Integration test | |
run: docker exec ${{ github.job }} bash -c "cd /root/occlum; OCCLUM_LOG_LEVEL=trace SGX_MODE=SIM make test" | |
- name: Integration test with Glibc | |
run: docker exec ${{ github.job }} bash -c "cd /root/occlum; OCCLUM_LOG_LEVEL=trace SGX_MODE=SIM make test-glibc" | |
- name: Show failed cases | |
if: ${{ failure() }} | |
run: docker exec ${{ github.job }} bash -c "cat /root/occlum/build/test/.fail" | |
- name: Integration test with optional Occlum features | |
run: | | |
docker exec ${{ github.job }} bash -c 'source /opt/intel/sgxsdk/environment; cd /root/occlum; make clean && LIBOS_FEATURES="kernel_heap_monitor" make install' | |
docker exec ${{ github.job }} bash -c "cd /root/occlum; SGX_MODE=SIM make test-glibc" | |
shell: bash | |
# Make_test_on_centos: | |
# runs-on: ubuntu-18.04 | |
# steps: | |
# - uses: actions/checkout@v1 | |
# with: | |
# submodules: true | |
# - uses: ./.github/workflows/composite_action/sim | |
# with: | |
# container-name: ${{ github.job }} | |
# build-envs: 'OCCLUM_RELEASE_BUILD=1' | |
# os: 'centos8.2' | |
# - name: Check format | |
# run: docker exec ${{ github.job }} bash -c 'cd /root/occlum; info=$(make format-check); | |
# if [[ -n $info ]]; then | |
# echo "Format error detected."; | |
# echo "$info"; | |
# exit 1; | |
# fi' | |
# - name: Integration test | |
# run: docker exec ${{ github.job }} bash -c "cd /root/occlum; OCCLUM_LOG_LEVEL=trace SGX_MODE=SIM make test" | |
# - name: Integration test with Glibc | |
# run: docker exec ${{ github.job }} bash -c "cd /root/occlum; OCCLUM_LOG_LEVEL=trace SGX_MODE=SIM make test-glibc" | |
# - name: Show failed cases | |
# if: ${{ failure() }} | |
# run: docker exec ${{ github.job }} bash -c "cat /root/occlum/build/test/.fail" |