File: build.yml

package info (click to toggle)
tang 15-2
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 468 kB
  • sloc: ansic: 1,079; sh: 439; makefile: 13
file content (74 lines) | stat: -rw-r--r-- 1,754 bytes parent folder | download | duplicates (2)
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
---
name: build

on:
  push:
    paths-ignore:
      - '**.md'
  pull_request:
    paths-ignore:
      - '**.md'

jobs:
  build:
    runs-on: ubuntu-22.04
    continue-on-error: ${{ ! matrix.stable }}
    strategy:
      matrix:
        os:
          - fedora:latest
          - quay.io/centos/centos:stream8
          - quay.io/centos/centos:stream9
          - debian:testing
          - debian:latest
          - ubuntu:latest
          - ubuntu:rolling
          - ubuntu:lunar
          - ubuntu:jammy
          - ubuntu:focal
        stable: [true]
        include:
          - os: quay.io/fedora/fedora:rawhide
            stable: false
          - os: ubuntu:devel
            stable: false
    steps:
      - uses: actions/checkout@v4

      - name: Show OS information
        run: cat /etc/os-release 2>/dev/null || \
          echo /etc/os-release not available

      - name: Install build dependencies
        run: bash .github/workflows/install-dependencies

      - name: Build tang
        run: |
          mkdir -p build && cd build
          export ninja=$(command -v ninja)
          [ -z "${ninja}" ] && export ninja=$(command -v ninja-build)
          meson setup .. || cat meson-logs/meson-log.txt >&2
          ${ninja}

      - name: Run tests
        run: |
          cd build
          if ! meson test ; then
              cat meson-logs/testlog.txt >&2
              exit -1
          fi

      - name: Show full test logs
        run: |
          if [ -r build/meson-logs/testlog.txt ]; then
            cat build/meson-logs/testlog.txt >&2
          else
            echo "No test log available" >&2
          fi

    container:
      image: ${{matrix.os}}
      env:
        DISTRO: ${{matrix.os}}

# vim:set ts=2 sw=2 et: