Skip to content

linux

linux #1241

Workflow file for this run

name: linux
on:
push:
branches:
- master
- v*
tags:
- AXCIOMA-v*
pull_request:
branches:
- master
- v*
schedule:
- cron: '0 1 * * SUN'
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
env:
DOC_ROOT: ${{ github.workspace }}/ACE_TAO
ACE_ROOT: ${{ github.workspace }}/ACE_TAO/ACE
MPC_ROOT: ${{ github.workspace }}/ACE_TAO/MPC
TAO_ROOT: ${{ github.workspace }}/ACE_TAO/TAO
X11_BASE_ROOT: ${{ github.workspace }}/axcioma
RIDL_ROOT: ${{ github.workspace }}/ridl
TAOX11_ROOT: ${{ github.workspace }}
INSTALL_PREFIX: ${{ github.workspace }}/stage
X11_BRANCH: master
ACETAOMPC_BRANCH: Latest_ACE8TAO4_Micro
jobs:
build:
permissions:
actions: read # for github/codeql-action/init to get workflow details
contents: read # for actions/checkout to fetch code
security-events: write # for github/codeql-action/analyze to upload SARIF results
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-20.04
CC: gcc-8
CXX: g++-8
ruby: '2.5'
PackageDeps: g++-8
- os: ubuntu-20.04
CC: gcc-9
CXX: g++-9
ruby: '2.6'
PackageDeps: g++-9
feature: Codecov
- os: ubuntu-22.04
CC: gcc-10
CXX: g++-10
ruby: '3.0'
PackageDeps: g++-10
- os: ubuntu-22.04
CC: gcc-11
CXX: g++-11
ruby: '3.0'
PackageDeps: g++-11
- os: ubuntu-22.04
CC: gcc-12
CXX: g++-12
ruby: '3.1'
PackageDeps: g++-12
- os: ubuntu-22.04
CC: gcc-12
CXX: g++-12
ruby: '3.2'
PackageDeps: g++-12
- os: ubuntu-24.04
CC: gcc-13
CXX: g++-13
ruby: '3.2'
PackageDeps: g++-13
- os: ubuntu-22.04
CC: gcc-10
CXX: g++-10
ruby: '2.7'
PackageDeps: g++-10
feature: CodeQL
runs-on: ${{ matrix.os }}
name: ${{ matrix.os }} ${{ matrix.CXX }} ruby-${{ matrix.ruby }}
env:
CC: ${{ matrix.CC }}
CXX: ${{ matrix.CXX }}
steps:
- if: contains(fromJson('["pull_request", "pull_request_target"]'), github.event_name) && github.repository_owner == 'RemedyIT'
run: |
echo "X11_BRANCH=${{ github.base_ref }}" >> $GITHUB_ENV
- if: contains(fromJson('["pull_request", "pull_request_target"]'), github.event_name) == false && github.repository_owner == 'RemedyIT'
run: |
echo "X11_BRANCH=${{ github.ref_name }}" >> $GITHUB_ENV
- uses: actions/checkout@v4
- name: checkout ACE_TAO
uses: actions/checkout@v4
with:
repository: DOCGroup/ACE_TAO
path: ${{ env.DOC_ROOT }}
ref: ${{ env.ACETAOMPC_BRANCH }}
- name: checkout MPC
uses: actions/checkout@v4
with:
repository: DOCGroup/MPC
path: ${{ env.MPC_ROOT }}
ref: ${{ env.ACETAOMPC_BRANCH }}
- name: checkout ridl
uses: actions/checkout@v4
with:
repository: RemedyIT/ridl
path: ${{ env.RIDL_ROOT }}
ref: ${{ env.X11_BRANCH }}
- name: checkout axcioma
uses: actions/checkout@v4
with:
repository: RemedyIT/axcioma
path: ${{ env.X11_BASE_ROOT }}
ref: ${{ env.X11_BRANCH }}
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
- name: Add repository ${{ matrix.Repo }}
if: startsWith (matrix.Repo, 'llvm-toolchain')
run:
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
sudo apt-add-repository "deb http://apt.llvm.org/$(lsb_release -cs)/ ${{ matrix.Repo }} main"
- name: Add packages
run: |
sudo apt-get --yes update
sudo apt-get --yes install libxerces-c-dev libssl-dev ${{ matrix.PackageDeps }}
- name: initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: cpp
if: matrix.feature == 'CodeQL'
- name: Run brix11 configure
run: |
$X11_BASE_ROOT/bin/brix11 configure -W aceroot=$ACE_ROOT -W taoroot=$TAO_ROOT -W mpcroot=$MPC_ROOT
- name: Add gcov
run: |
sed -i '1igcov=1' $ACE_ROOT/include/makeinclude/platform_macros.GNU
if: matrix.feature == 'Codecov'
- name: Print brix11 configuration
run: |
$X11_BASE_ROOT/bin/brix11 env -- configure -P
- name: Run brix11 gen build
run: |
$X11_BASE_ROOT/bin/brix11 gen build axcioma/workspace.mwc -- gen build $TAOX11_ROOT/examples -- gen build $TAOX11_ROOT/orbsvcs/tests -- gen build $TAOX11_ROOT/tests
- name: Run brix11 make
run: |
$X11_BASE_ROOT/bin/brix11 make -N -d $X11_BASE_ROOT -- make -N -d $TAOX11_ROOT/examples -- make -N -d $TAOX11_ROOT/orbsvcs/tests -- make -N -d $TAOX11_ROOT/tests
- name: Run brix11 tests
run: |
$X11_BASE_ROOT/bin/brix11 run list -l $TAOX11_ROOT/bin/taox11_tests.lst -r $TAOX11_ROOT
- name: Run make install
run: |
make -j -C ${TAOX11_ROOT} install
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
if: matrix.feature == 'CodeQL'
- uses: codecov/codecov-action@v4
with:
fail_ci_if_error: true
verbose: true # optional (default = false)
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
if: matrix.feature == 'Codecov'