Skip to content

Use enum type for thinpool feature args #3363

Use enum type for thinpool feature args

Use enum type for thinpool feature args #3363

Workflow file for this run

---
name: stratisd CI on ubuntu
# yamllint disable-line rule:truthy
on:
push:
branches:
- master
paths-ignore:
- 'CHANGES.txt'
- '**/README.md'
- 'README_tests.md'
- 'tests/**'
- '.packit.yaml'
- 'plans/**'
- 'tests-fmf/**'
pull_request:
branches:
- master
paths-ignore:
- 'CHANGES.txt'
- '**/README.md'
- 'README_tests.md'
- 'tests/**'
- '.packit.yaml'
- 'plans/**'
- 'tests-fmf/**'
workflow_dispatch:
# cancel the in-progress workflow when PR is refreshed.
# yamllint disable rule:line-length
concurrency:
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
cancel-in-progress: true
jobs:
checks:
strategy:
matrix:
include:
- task: make -f Makefile clippy
toolchain: 1.82.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN
components: clippy
- task: PROFILEDIR=debug make -f Makefile build
toolchain: 1.82.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN
components: cargo
- task: PROFILEDIR=debug make -f Makefile build-min
toolchain: 1.82.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN
components: cargo
- task: PROFILEDIR=debug make -f Makefile build-min-no-systemd
toolchain: 1.82.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN
components: cargo
- task: PROFILEDIR=debug make -f Makefile build-utils
toolchain: 1.82.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN
components: cargo
- task: PROFILEDIR=debug make -f Makefile build-no-ipc
toolchain: 1.82.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN
components: cargo
- task: PROFILEDIR=debug make -f Makefile stratisd-tools
toolchain: 1.82.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN
components: cargo
- task: make -f Makefile docs-ci
toolchain: 1.82.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN
components: cargo
- task: make -f Makefile test
toolchain: 1.82.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN
components: cargo
- task: make -f Makefile build
toolchain: 1.82.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN
components: cargo
- task: make -f Makefile build-min
toolchain: 1.82.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN
components: cargo
- task: make -f Makefile build-no-ipc
toolchain: 1.82.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN
components: cargo
runs-on: ubuntu-22.04
container:
image: ubuntu:jammy
options: --privileged -v /dev:/dev
steps:
- uses: actions/checkout@v4
- name: Install dependencies for Ubuntu
run: apt-get -q update
- name: Install dependencies for Ubuntu
run: >
DEBIAN_FRONTEND=noninteractive
apt-get install -y
clang
curl
libblkid-dev
libcryptsetup-dev
libdbus-1-dev
libdevmapper-dev
libsystemd-dev
libudev-dev
make
sudo
thin-provisioning-tools
- uses: dtolnay/rust-toolchain@master
with:
components: ${{ matrix.components }}
toolchain: ${{ matrix.toolchain }}
- name: Test ${{ matrix.task }} on ${{ matrix.toolchain }} toolchain
run: ${{ matrix.task }}
# TESTS WITH UDEV
checks_with_udev:
strategy:
matrix:
include:
- task: RUST_LOG=stratisd=debug make -f Makefile test-loop
toolchain: 1.82.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN
components: cargo
runs-on: ubuntu-22.04
container:
image: ubuntu:jammy
options: --privileged -v /dev:/dev -v /run/udev:/run/udev -v /usr/lib/udev:/usr/lib/udev --ipc=host
steps:
- uses: actions/checkout@v4
- name: Install dependencies for Ubuntu
run: apt-get -q update
- name: Install dependencies for Ubuntu
run: >
DEBIAN_FRONTEND=noninteractive
apt-get install -y
asciidoc
clang
curl
libblkid-dev
libcryptsetup-dev
libdbus-1-dev
libdevmapper-dev
libsystemd-dev
libudev-dev
make
sudo
systemd
thin-provisioning-tools
udev
xfsprogs
- uses: dtolnay/rust-toolchain@master
with:
components: ${{ matrix.components }}
toolchain: ${{ matrix.toolchain }}
- name: Build stratisd
run: PROFILEDIR=debug make -f Makefile build-all
- name: Install stratisd
run: PROFILEDIR=debug make -f Makefile install
- name: Reload udev
run: udevadm control --reload
- name: Test ${{ matrix.task }} on ${{ matrix.toolchain }} toolchain
run: ${{ matrix.task }}