Skip to content

Improve error handling #868

Improve error handling

Improve error handling #868

Workflow file for this run

# Copyright (c) 2023-2024 Contributors to the Eclipse Foundation
#
# This program and the accompanying materials are made available under the
# terms of the Apache License, Version 2.0 which is available at
# https://www.apache.org/licenses/LICENSE-2.0.
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# SPDX-License-Identifier: Apache-2.0
name: CI
concurrency:
group: ${{ github.ref }}
cancel-in-progress: true
on:
workflow_dispatch:
push:
# Run only on branches/commits and not tags
branches:
- main
pull_request:
branches:
- main
jobs:
lint-job:
name: "Run linters"
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Run Linters
uses: pre-commit/action@v3.0.1
cli-tests:
strategy:
matrix:
os: ["ubuntu-22.04"]
# 21.7.1 to check if future release could make a problem
node_version: [lts/Iron, 21.7.1]
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node_version }}
cache: npm
- run: npm install
- run: npm run build
- run: npm run coverage
- uses: irongut/CodeCoverageSummary@v1.3.0
with:
filename: coverage/cobertura-coverage.xml
badge: true
format: markdown
hide_complexity: true
indicators: true
output: both
- run: |
cat code-coverage-results.md >> $GITHUB_STEP_SUMMARY
system-tests:
name: "Run system tests for ${{ matrix.language }}"
runs-on: ubuntu-22.04
container: ghcr.io/eclipse-velocitas/devcontainer-base-images/${{ matrix.language }}:v0.3
strategy:
matrix:
language: ["python", "cpp"]
fail-fast: false
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
- name: Install dependencies
run: |
apt-get update && apt-get install build-essential -y
npm install
- name: Compile EXE
run: TARGET=node20-linux-x64 ARCH=x64 OS=linux npm run compile-exe
- name: Run system test
run: ARCH=x64 npm run system-test