Skip to content

Merge pull request #70 from faasm/bugfix-snp-ci #115

Merge pull request #70 from faasm/bugfix-snp-ci

Merge pull request #70 from faasm/bugfix-snp-ci #115

Workflow file for this run

name: "Integration Tests"
on:
push:
branches: [main]
pull_request:
branches: [main]
types: [opened, synchronize, reopened, ready_for_review]
defaults:
run:
shell: bash
# Cancel previous running actions for the same PR
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
jobs:
checks:
if: github.event.pull_request.draft == false
runs-on: ubuntu-24.04
steps:
- name: "Checkout code"
uses: actions/checkout@v4
- name: "Install APT deps"
run: ./scripts/apt.sh
- name: "Build workspace (needed for auto-generated modules)"
run: cargo build
- name: "Run formatting checks"
run: ./scripts/accli_wrapper.sh dev format-code --check
rust-unit-tests:
if: github.event.pull_request.draft == false
runs-on: ubuntu-24.04
steps:
- name: "Checkout code"
uses: actions/checkout@v4
- name: "Install APT deps"
run: ./scripts/apt.sh
- name: "Run Rust unit tests"
run: |
source ./scripts/workon.sh
# The integration tests part of the attestation-service use custom
# C++ applications that require a clean rebuild of some rust
# libraries. The clean build wipes out other test targets, so we
# must execute it in isolation.
cargo test --workspace --exclude attestation-service
cargo test -p attestation-service
cpp-unit-tests:
if: github.event.pull_request.draft == false
runs-on: ubuntu-24.04
steps:
- name: "Checkout code"
uses: actions/checkout@v4
- name: "Install APT deps"
run: ./scripts/apt.sh
- name: "Build C++ code"
run: ./scripts/accli_wrapper.sh accless build --clean
- name: "Run C++ unit tests"
run: ./scripts/accli_wrapper.sh accless test