Files
ResInsight/.github/workflows/AppFwkUnitTest.yml
Magne Sjaastad c4993b6869 GitHub Actions: Add apt mirror to make package download more robust
- Download of Ubuntu packages from Azure is unstable. Add mirror sites to improve reliability.
- Improve use of clang-format and include source code changes
2023-03-16 07:16:11 +01:00

62 lines
2.5 KiB
YAML

name: Application Framework Build with Unit Tests
on: [push, pull_request]
jobs:
ResInsight-x64:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set apt mirror
# see https://github.com/actions/runner-images/issues/7048
if: "contains( matrix.os, 'ubuntu')"
run: |
# make sure there is a `\t` between URL and `priority:*` attributes
printf 'http://azure.archive.ubuntu.com/ubuntu priority:1\n' | sudo tee /etc/apt/mirrors.txt
curl http://mirrors.ubuntu.com/mirrors.txt | sudo tee --append /etc/apt/mirrors.txt
sudo sed -i 's/http:\/\/azure.archive.ubuntu.com\/ubuntu\//mirror+file:\/etc\/apt\/mirrors.txt/' /etc/apt/sources.list
- name: Install Linux dependencies
if: "contains( matrix.os, 'ubuntu')"
run: |
sudo apt-get update --option="APT::Acquire::Retries=3"
sudo apt-get install --option="APT::Acquire::Retries=3" libxkbcommon-x11-0 libgl1-mesa-dev mesa-common-dev libglfw3-dev libglu1-mesa-dev
- name: Install Qt
uses: jurplel/install-qt-action@v3
with:
version: 5.12.12
modules: qtscript
dir: "${{ github.workspace }}/Qt/"
cache: true
- name: Build AppFwk with Unit Tests
uses: lukka/run-cmake@v3
with:
cmakeListsOrSettingsJson: CMakeListsTxtAdvanced
cmakeListsTxtPath: "${{ github.workspace }}/Fwk/AppFwk/CMakeLists.txt"
buildDirectory: ${{ github.workspace }}/cmakebuild
buildWithCMakeArgs: "--config Release"
useVcpkgToolchainFile: false
- name: Run Unit Tests Windows
if: contains( matrix.os, 'windows')
shell: bash
run: |
cmakebuild/cafProjectDataModel/cafPdmCore/cafPdmCore_UnitTests/Release/cafPdmCore_UnitTests
cmakebuild/cafProjectDataModel/cafPdmXml/cafPdmXml_UnitTests/Release/cafPdmXml_UnitTests
cmakebuild/cafProjectDataModel/cafProjectDataModel_UnitTests/Release/cafProjectDataModel_UnitTests
- name: Run Unit Tests Linux
if: "!contains( matrix.os, 'windows')"
shell: bash
run: |
cmakebuild/cafProjectDataModel/cafPdmCore/cafPdmCore_UnitTests/cafPdmCore_UnitTests
cmakebuild/cafProjectDataModel/cafPdmXml/cafPdmXml_UnitTests/cafPdmXml_UnitTests
cmakebuild/cafProjectDataModel/cafProjectDataModel_UnitTests/cafProjectDataModel_UnitTests