Skip to content

Oct cleanup

Oct cleanup #991

Workflow file for this run

name: C/C++ CI
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
#! -------------------------------------------------------------------------
- name: dependencies
run: |
sudo apt update -y
sudo apt install -y clang-format-11 libgtest-dev libgflags-dev openssl libssl-dev protobuf-compiler protoc-gen-go golang-go cmake
sudo apt install -y python3 pylint
pip install pytest
# Needed for Python bindings support
sudo apt install -y swig
# Needed for Python bindings support, using generated certifier_pb2.py file
# Need to resolve references to imports from 'google.protobuf'
sudo apt install -y python3-protobuf
#! -------------------------------------------------------------------------
#! Check core source code formatting, using clang-format tool.
- name: test-src-code-formatting
run: |
./CI/scripts/check-srcfmt.sh
#! -------------------------------------------------------------------------
- name: test-core-certifier-programs
run: |
./CI/scripts/test.sh test-core-certifier-programs
#! -------------------------------------------------------------------------
#! Code formatting runs pylint, so this step can only come after
#! test-core-certifier-programs where the shared libraries (imported by
#! Pytests code) are built.
#! -------------------------------------------------------------------------
- name: test-code-formatting
run: |
./CI/scripts/check-gofmt.sh
#! Some new pytests trip warning:
#! - W0212: Access to a protected member _print of a client class
which pylint
pylint --version
pwd
ls -aFlrt *.py* *.so
set -x
# RESOLVE: tests/pytests/test_certifier_protobuf_interfaces.py:128:16: E1101: Instance of 'time_point' has no 'FromString' member (no-member)
# CI fails due to above error, suppressed by use of --exit-zero
PYTHONPATH=. pylint --disable W0212 --exit-zero tests/pytests/*.py
set +x
#! -------------------------------------------------------------------------
- name: test-cert_framework-pytests
run: |
./CI/scripts/test.sh test-cert_framework-pytests
#! -------------------------------------------------------------------------
- name: test-mtls-ssl-client-server-comm-pytest
run: |
./CI/scripts/test.sh test-mtls-ssl-client-server-comm-pytest
#! -------------------------------------------------------------------------
- name: unit-test-certlib-utility-programs
run: |
./CI/scripts/test.sh unit-test-certlib-utility-programs
#! -------------------------------------------------------------------------
- name: test-run_example-help-list-args
run: |
./CI/scripts/test.sh test-run_example-help-list-args
#! -------------------------------------------------------------------------
- name: test-run_example-dry-run
run: |
./CI/scripts/test.sh test-run_example-dry-run
#! -------------------------------------------------------------------------
- name: test-run_example-simple_app
run: |
#! ---------------------------------------------------------------------
#! This will also check that utilities programs still compile
./CI/scripts/test.sh test-run_example-simple_app
#! -------------------------------------------------------------------------
- name: test-run_example-simple_app_python
run: |
./CI/scripts/test.sh test-run_example-simple_app_python
#! -------------------------------------------------------------------------
- name: test-build-and-setup-App-Service-and-simple_app_under_app_service
run: |
./CI/scripts/test.sh test-build-and-setup-App-Service-and-simple_app_under_app_service
#! -------------------------------------------------------------------------
- name: test-build-and-install-sev-snp-simulator
run: |
./CI/scripts/test.sh test-build-and-install-sev-snp-simulator
#! -------------------------------------------------------------------------
- name: test-sev-snp-simulator-sev-test
run: |
./CI/scripts/test.sh test-sev-snp-simulator-sev-test
#! -------------------------------------------------------------------------
- name: test-certifier-build-and-test-simulated-SEV-mode
run: |
./CI/scripts/test.sh test-certifier-build-and-test-simulated-SEV-mode
#! -------------------------------------------------------------------------
- name: test-simple_app_under_sev-simulated-SEV-mode
run: |
./CI/scripts/test.sh test-simple_app_under_sev-simulated-SEV-mode
#! -------------------------------------------------------------------------
- name: test-simple_app_under_keystone-using-shim
run: |
./CI/scripts/test.sh test-simple_app_under_keystone-using-shim
#! -------------------------------------------------------------------------
- name: test-ISLET-SDK-shim_test
run: |
./CI/scripts/test.sh test-ISLET-SDK-shim_test
#! -------------------------------------------------------------------------
- name: test-run_example-simple_app_under_islet-using-shim
run: |
./CI/scripts/test.sh test-run_example-simple_app_under_islet-using-shim