1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
|
---
name: C/C++ CI
on:
push:
branches:
- master
- develop
paths:
- 'src/**'
- 'include/**'
- '.github/**'
- 'tests/**'
- configure.ac
- Makefile.am
pull_request:
branches: [master]
jobs:
notification:
runs-on: ubuntu-latest
name: Notify start to IRC gitlama
steps:
- name: IRC notification
uses: LanguageMachines/ticcactions/irc-init@v1
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@0.12.1
with:
access_token: ${{ github.token }}
build:
runs-on: ${{ matrix.os }}
needs: notification
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
compiler: [g++-12, clang++]
steps:
- uses: actions/checkout@v4.1.1
- uses: LanguageMachines/ticcactions/cpp-build-env@v1
- uses: LanguageMachines/ticcactions/cpp-dependencies@v1
- uses: LanguageMachines/ticcactions/irc-nick@v1
- uses: LanguageMachines/ticcactions/cpp-submodule-build@v1
with:
branch: ${{ github.ref_name }}
module: ticcutils
- uses: LanguageMachines/ticcactions/cpp-submodule-build@v1
with:
branch: ${{ github.ref_name }}
module: libfolia
- uses: LanguageMachines/ticcactions/cpp-submodule-build@v1
with:
module: uctodata
- uses: LanguageMachines/ticcactions/setup-cppcheck@v1
- name: Static Code-check
if: ${{ env.action_status == '' }}
run: cppcheck ${{ env.cpc_opts }} .
- name: install libexttextcat
uses: LanguageMachines/ticcactions/add-textcat@v1
- uses: LanguageMachines/ticcactions/cpp-safe-build@v1
- name: Notify IRC of build results
uses: LanguageMachines/ticcactions/irc-status@v1
with:
branch: ${{ github.ref_name }}
nickname: ${{ env.nick }}
status: ${{ env.action_status }}
details: ${{ env.action_details }}
continue-on-error: true
- name: run uctotests
if: ${{ env.action_status == '' }}
env:
EXPECT: 0
LD_LIBRARY_PATH: $LD_LIBRARY_PATH:/usr/local/lib
run: |
cd tests
./testaction.sh
TEST_STAT=$(cat status.tmp)
if [ $TEST_STAT != 0 ]
then
echo "action_status=uctotests" >> $GITHUB_ENV
fi
echo "action_details=$TEST_STAT errors" >> $GITHUB_ENV
continue-on-error: true
- name: Notify IRC of results
uses: LanguageMachines/ticcactions/irc-status@v1
with:
branch: ${{ github.ref_name }}
nickname: ${{ env.nick }}
step: testing
status: ${{ env.action_status }}
details: ${{ env.action_details }}
|