Skip to content

chore: bump version to 0.2.0 #61

chore: bump version to 0.2.0

chore: bump version to 0.2.0 #61

Workflow file for this run

# SPDX-FileCopyrightText: Copyright 2025 Siemens AG
#
# SPDX-License-Identifier: MIT
name: build bt2-ftrace-to-ctf
on:
push:
branches:
- main
pull_request:
workflow_dispatch:
# Sets permissions of the GITHUB_TOKEN to checkout the repository
permissions:
contents: read
jobs:
reuse-and-codestyle:
runs-on: ubuntu-24.04
steps:
- name: checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: install dependencies
run: |
pip3 install --break-system-packages fsfe-reuse
git clean -f -d
- name: execute linters
run: |
reuse lint
build:
runs-on: ubuntu-24.04
needs: generate-trace-data
strategy:
matrix:
distro:
["debian:bookworm", "debian:trixie", "debian:forky", "ubuntu:noble"]
meson_opts: ["-Dtracecmd-internals=false", "-Dtracecmd-internals=true"]
container: ${{ matrix.distro }}
steps:
- name: checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: install dependencies
run: |
apt-get update
# Install common build dependencies
apt-get install -y --no-install-recommends \
build-essential \
ninja-build \
libbabeltrace2-dev \
libtraceevent-dev \
libtracecmd-dev \
libtracefs-dev \
libglib2.0-dev \
libjson-glib-dev
# Install meson, using backports for Debian bookworm
if [[ "${{ matrix.distro }}" == "debian:bookworm" ]]; then
# Add backports repository for Debian bookworm
echo "deb http://deb.debian.org/debian bookworm-backports main" > /etc/apt/sources.list.d/backports.list
apt-get update
apt-get install -y -t bookworm-backports meson
else
apt-get install -y meson
fi
shell: bash
- name: build components
run: |
meson setup -Dbuildtype=debugoptimized ${{ matrix.meson_opts }} build
cd build && ninja
- name: download sample trace data
uses: actions/download-artifact@v5
with:
name: trace-data
- name: smoke test deps
run: apt-get install -y babeltrace2
- name: smoke test source.ftrace.tracedat
env:
BABELTRACE_PLUGIN_PATH: ${{ github.workspace }}/build
run: babeltrace2 trace.dat
- name: smoke test sink.ftrace.tracemeta
env:
BABELTRACE_PLUGIN_PATH: ${{ github.workspace }}/build
run: babeltrace2 --component=meta:sink.ftrace.tracemeta trace.dat
- name: smoke test query inteface
env:
BABELTRACE_PLUGIN_PATH: ${{ github.workspace }}/build
run: babeltrace2 query -p "inputs=[trace.dat]" source.ftrace.tracedat babeltrace.trace-infos
- name: smoke test ftrace-to-ctf
env:
BABELTRACE_PLUGIN_PATH: ${{ github.workspace }}/build
run: ./build/ftrace-to-ctf --lttng trace.dat /tmp
generate-trace-data:
runs-on: ubuntu-24.04
steps:
- name: install dependencies
run: |
sudo apt-get update
sudo apt-get install -y trace-cmd
- name: generate trace.dat sample data
run: sudo trace-cmd record -C mono -e "sched:*" sleep 1
- uses: actions/upload-artifact@v5
with:
name: trace-data
path: trace.dat