Merge pull request #3460 from mulkieran/issue_stratisd_3456 #1828
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: stratisd CI on fedora | |
# yamllint disable-line rule:truthy | |
on: | |
push: | |
branches: | |
- master | |
paths-ignore: | |
- 'CHANGES.txt' | |
- '**/README.md' | |
- 'README_tests.md' | |
- 'tests/**' | |
- '.packit.yaml' | |
- 'plans/**' | |
- 'test/**' | |
pull_request: | |
branches: | |
- master | |
paths-ignore: | |
- 'CHANGES.txt' | |
- '**/README.md' | |
- 'README_tests.md' | |
- 'tests/**' | |
- '.packit.yaml' | |
- 'plans/**' | |
- 'test/**' | |
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.72.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
components: clippy | |
- task: PROFILEDIR=debug make -f Makefile build | |
toolchain: 1.72.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
components: cargo | |
- task: PROFILEDIR=debug make -f Makefile build-min | |
toolchain: 1.72.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
components: cargo | |
- task: PROFILEDIR=debug make -f Makefile build-no-ipc | |
toolchain: 1.72.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
components: cargo | |
- task: PROFILEDIR=debug make -f Makefile stratis-dumpmetadata | |
toolchain: 1.72.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
components: cargo | |
- task: make -f Makefile docs-ci | |
toolchain: 1.72.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
components: cargo | |
- task: make -f Makefile test | |
toolchain: 1.72.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
components: cargo | |
- task: >- | |
TANG_URL=localhost | |
make -f Makefile test-clevis-loop-should-fail | |
toolchain: 1.72.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
components: cargo | |
- task: make -f Makefile build | |
toolchain: 1.72.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
components: cargo | |
- task: make -f Makefile build-min | |
toolchain: 1.72.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
components: cargo | |
- task: make -f Makefile build-no-ipc | |
toolchain: 1.72.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
components: cargo | |
runs-on: ubuntu-22.04 | |
container: | |
image: fedora:38 # CURRENT DEVELOPMENT ENVIRONMENT | |
options: --privileged -v /dev:/dev -v /run/udev:/run/udev -v /usr/lib/udev:/usr/lib/udev | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install dependencies for Fedora | |
run: > | |
dnf install -y | |
clang | |
curl | |
cryptsetup-devel | |
dbus-devel | |
device-mapper-persistent-data | |
device-mapper-devel | |
libblkid-devel | |
make | |
ncurses | |
sudo | |
systemd-devel | |
- 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.72.0 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
components: cargo | |
runs-on: ubuntu-22.04 | |
container: | |
image: fedora:38 # CURRENT DEVELOPMENT ENVIRONMENT | |
options: --privileged -v /dev:/dev -v /run/udev:/run/udev -v /usr/lib/udev:/usr/lib/udev --ipc=host | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install dependencies for Fedora | |
run: > | |
dnf install -y | |
asciidoc | |
clang | |
cryptsetup-devel | |
curl | |
dbus-devel | |
glibc-static | |
device-mapper-devel | |
device-mapper-persistent-data | |
libblkid-devel | |
make | |
ncurses | |
sudo | |
systemd-devel | |
systemd-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 }} |