CI: build the everest-framework in the ci #5
Workflow file for this run
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: Linux Build | |
on: [workflow_dispatch, pull_request] | |
jobs: | |
build: | |
name: Build | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Format branch name for cache key | |
run: | | |
BRANCH_NAME_FOR_CACHE="${GITHUB_REF_NAME//-/_}" | |
echo "branch_name_for_cache=${BRANCH_NAME_FOR_CACHE}" >> "$GITHUB_ENV" | |
- name: Setup cache | |
uses: actions/cache@v3 | |
with: | |
path: cache | |
key: compile-${{ env.branch_name_for_cache }}-${{ github.sha }} | |
restore-keys: | | |
compile-${{ env.branch_name_for_cache }}- | |
compile- | |
- name: Checkout everest-core | |
uses: actions/checkout@v3 | |
with: | |
path: source | |
- name: Run clang-format | |
uses: everest/everest-ci/github-actions/run-clang-format@v1.0.0 | |
with: | |
source-dir: source | |
extensions: hpp,cpp | |
exclude: cache | |
- name: Setup run scripts | |
run: | | |
mkdir scripts | |
rsync -a source/.ci/build-kit/ scripts | |
# Run on debian since alpine 3.17 does not ship lcov. | |
- name: Pull docker container | |
run: | | |
docker pull --quiet ghcr.io/everest/build-kit-debian:latest | |
docker image tag ghcr.io/everest/build-kit-debian:latest build-kit | |
- name: Compile and Test | |
run: | | |
docker run \ | |
--volume "$(pwd):/ext" \ | |
build-kit run-script compile |