• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1name: linux
2
3# Controls when the action will run. Triggers the workflow on push or pull request
4# events but only for the master branch
5on: [push, pull_request]
6
7# A workflow run is made up of one or more jobs that can run
8# sequentially or in parallel
9jobs:
10  # This workflow contains a single job called "build"
11  build:
12    runs-on: ubuntu-latest
13
14    # Steps represent a sequence of tasks that will be executed as part of the job
15    steps:
16      # Checks-out your repository under $GITHUB_WORKSPACE, so your job
17      # can access it
18      - uses: actions/checkout@v3
19
20      - name: setup prerequisites
21        run: |
22          sudo apt update
23          sudo apt install autoconf automake libtool libudev-dev m4
24
25      - name: bootstrap
26        run: ./bootstrap.sh
27
28      - name: netlink
29        # Disable tests for netlink as it doesn't seem to work in the CI environment.
30        run: .private/ci-build.sh --build-dir build-netlink --no-test -- --disable-udev
31
32      - name: udev
33        run: .private/ci-build.sh --build-dir build-udev -- --enable-udev
34
35      - name: debug-log
36        run: .private/ci-build.sh --build-dir build-debug -- --enable-debug-log
37
38      - name: disable-log
39        run: .private/ci-build.sh --build-dir build-nolog -- --disable-log
40
41      - uses: mymindstorm/setup-emsdk@v13
42
43      - run: npm ci
44        working-directory: tests/webusb-test-shim
45
46      - name: emscripten
47        run: emconfigure .private/ci-build.sh --build-dir build-emscripten -- --host=wasm32-unknown-emscripten
48
49      - name: umockdev test
50        run: .private/ci-container-build.sh docker.io/amd64/ubuntu:rolling
51