[go: up one dir, main page]

reis 0.3.0

Pure Rust implementation of libei/libeis protocol.
Documentation
name: CI

on:
  pull_request:
  push:

jobs:
  check-and-build:
    strategy:
      matrix:
        rust_version: ['1.70.0', stable]
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - uses: hecrj/setup-rust-action@v1
      with:
        rust-version: ${{ matrix.rust_version }}
        components: clippy, rustfmt
    - run: sudo apt-get -qq update
    - run: sudo apt-get install -y libxkbcommon-dev
    - run: cargo fmt --all -- --check
    - run: cargo clippy --all-features -- -Dwarnings
    - run: cargo build --all-features
      if: matrix.rust_version != 'stable'
    - run: cargo build --all-features --examples
      if: matrix.rust_version == 'stable'
    - uses: actions/upload-artifact@v3
      with:
        name: reis-demo-server
        path: target/debug/examples/reis-demo-server
  libei-test:
    runs-on: ubuntu-latest
    needs: check-and-build
    steps:
    - run: git clone https://gitlab.freedesktop.org/libinput/libei .
    - uses: actions/download-artifact@v3
      with:
        name: reis-demo-server
    - run: chmod +x reis-demo-server
    - run: sudo apt-get -qq update
    - run: sudo apt-get install -y meson libsystemd-dev python3-pytest python3-structlog python3-attr python3-dbusmock python3-pip
    - run: pip3 install strenum
    - run: meson setup build
    - run: meson compile -C build
    - run: |
        mkdir xdg
        export XDG_RUNTIME_DIR=$PWD/xdg
        export LIBEI_TEST_SERVER=$PWD/reis-demo-server
        export LIBEI_TEST_SOCKET=$PWD/xdg/eis-0
        cd build && pytest-3