Skip to content

🧹 Update heading and logo for X-as-Code #7

🧹 Update heading and logo for X-as-Code

🧹 Update heading and logo for X-as-Code #7

Workflow file for this run

# Workflow for building and testing on pull requests
#
name: PR Checks
on:
# Runs on pull requests targeting the main branch
pull_request:
branches: ["main"]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
env:
BUILD_TYPE: Release
jobs:
cpp-build:
name: C++ Build and Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: lukka/get-cmake@latest
# Install lcov for coverage support
- name: Install lcov
run: sudo apt-get update && sudo apt-get install -y lcov
- name: Build C++ Project with Tests
working-directory: src
run: |
# Configure CMake without coverage for CI
cmake -B build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
# Build the project
cmake --build build --config ${{env.BUILD_TYPE}}
- name: Run C++ Tests
working-directory: src/build
run: |
# Run tests with XML output
./eac_test --gtest_output=xml:test-results.xml
- name: Upload Test Results
uses: actions/upload-artifact@v4
with:
name: test-results
path: src/build/test-results.xml
build:
name: Build Documentation
runs-on: ubuntu-latest
needs: cpp-build
steps:
- uses: actions/checkout@v4
- name: Download Test Results
uses: actions/download-artifact@v4
with:
name: test-results
path: src/build
- name: Install System Dependencies
run: sudo apt-get update && sudo apt-get install -y graphviz plantuml
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
enable-cache: true
- name: Install Python dependencies
run: uv sync
- name: Build Sphinx Documentation
run: uv run sphinx-build -E -a -b html docs docs/_build/html