Prototype for context shared between timers #9
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
# See also https://github.com/EVerest/everest-core/tree/main/.github/workflows | |
# TODO: modify to reuse the above workflow to DRY up CI. | |
name: Build and test libtimer | |
on: | |
pull_request: {} | |
workflow_dispatch: | |
inputs: | |
runner: | |
description: Which runner to use | |
type: choice | |
default: 'ubuntu-22.04' | |
required: true | |
options: | |
- 'ubuntu-22.04' | |
- 'large-ubuntu-22.04-xxl' | |
jobs: | |
lint: | |
name: Lint | |
runs-on: ${{ inputs.runner || 'ubuntu-22.04' }} | |
steps: | |
- name: Checkout libtimer | |
uses: actions/checkout@v3 | |
with: | |
path: source | |
- name: Run clang-format | |
uses: everest/everest-ci/github-actions/[email protected] | |
with: | |
source-dir: source | |
extensions: hpp,cpp | |
exclude: cache | |
install_and_test: | |
name: Install and test | |
runs-on: ${{ inputs.runner || 'ubuntu-22.04' }} | |
steps: | |
- name: Checkout libtimer | |
uses: actions/checkout@v3 | |
with: | |
path: source | |
- name: Setup run scripts | |
run: | | |
mkdir scripts | |
rsync -a source/.ci/build-kit/ scripts | |
- name: Pull docker container | |
run: | | |
docker pull --platform=linux/x86_64 --quiet ghcr.io/everest/build-kit-alpine:latest | |
docker image tag ghcr.io/everest/build-kit-alpine:latest build-kit | |
- name: Run install with tests | |
run: | | |
docker run \ | |
--volume "$(pwd):/ext" \ | |
--name test-container \ | |
build-kit run-script install_and_test | |
- name: Archive test results | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: ctest-report | |
path: ${{ github.workspace }}/ctest-report | |