Revert "Update lowest supported Rust to 1.71.1" #477
Workflow file for this run
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: libcryptsetup CI | |
# yamllint disable-line rule:truthy | |
on: | |
push: | |
branches: [master] | |
paths-ignore: | |
- 'CHANGES.txt' | |
- '**/README.md' | |
pull_request: | |
branches: [master] | |
paths-ignore: | |
- 'CHANGES.txt' | |
- '**/README.md' | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
jobs: | |
# MANDATORY CHECKS USING CURRENT DEVELOPMENT TOOLCHAIN: | |
format: | |
env: | |
TASK: fmt-ci | |
TOOLCHAIN: 1.71.1 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
components: rustfmt | |
toolchain: ${{ env.TOOLCHAIN }} | |
- name: Test format on ${{ env.TOOLCHAIN }} toolchain | |
run: make -f Makefile $TASK | |
lint: | |
env: | |
TASK: clippy | |
TOOLCHAIN: 1.71.1 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
components: clippy | |
toolchain: ${{ env.TOOLCHAIN }} | |
- name: Install dependencies | |
run: > | |
sudo apt-get install libcryptsetup-dev | |
- name: Test linting on ${{ env.TOOLCHAIN }} toolchain | |
run: make -f Makefile $TASK | |
# MANDATORY TESTING ON STABLE | |
stable: | |
env: | |
TOOLCHAIN: stable | |
strategy: | |
matrix: | |
include: | |
- task: make -f Makefile build | |
dependencies: libcryptsetup-dev | |
- task: make -f Makefile docs-ci | |
dependencies: libcryptsetup-dev | |
- task: make -f Makefile test | |
dependencies: libcryptsetup-dev libkeyutils-dev | |
- task: make -f Makefile test-mutex | |
dependencies: libcryptsetup-dev libkeyutils-dev | |
- task: make -f Makefile test-mutex-guard | |
dependencies: libcryptsetup-dev libkeyutils-dev | |
- task: make -f Makefile release | |
dependencies: libcryptsetup-dev | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: ${{ env.TOOLCHAIN }} | |
- name: Install dependencies | |
run: > | |
sudo apt-get install ${{ matrix.dependencies }} | |
- name: Test ${{ matrix.task }} on ${{ env.TOOLCHAIN }} toolchain | |
run: ${{ matrix.task }} | |
# MANDATORY TESTING USING LOWEST SUPPORTED TOOLCHAIN | |
lowest_supported: | |
env: | |
TOOLCHAIN: 1.71.0 # LOWEST SUPPORTED RUST TOOLCHAIN | |
strategy: | |
matrix: | |
include: | |
- task: make -f Makefile test | |
dependencies: libcryptsetup-dev libkeyutils-dev | |
- task: make -f Makefile test-mutex | |
dependencies: libcryptsetup-dev libkeyutils-dev | |
- task: make -f Makefile test-mutex-guard | |
dependencies: libcryptsetup-dev libkeyutils-dev | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: ${{ env.TOOLCHAIN }} | |
- name: Install dependencies | |
run: > | |
sudo apt-get install ${{ matrix.dependencies }} | |
- name: Test ${{ matrix.task }} on ${{ env.TOOLCHAIN }} toolchain | |
run: ${{ matrix.task }} | |
# MANDATORY TESTING ON FEDORA | |
fedora: | |
env: | |
# Lowest supported | |
TOOLCHAIN: 1.71.0 # LOWEST SUPPORTED RUST TOOLCHAIN | |
strategy: | |
matrix: | |
include: | |
# Fedora 33 | |
- task: make -f Makefile build | |
dependencies: cryptsetup-devel | |
container: 33 | |
- task: make -f Makefile docs-ci | |
dependencies: cryptsetup-devel | |
container: 33 | |
- task: make -f Makefile test | |
dependencies: cryptsetup-devel keyutils-libs-devel | |
container: 33 | |
- task: make -f Makefile test-mutex | |
dependencies: cryptsetup-devel keyutils-libs-devel | |
container: 33 | |
- task: make -f Makefile test-mutex-guard | |
dependencies: cryptsetup-devel keyutils-libs-devel | |
container: 33 | |
- task: make -f Makefile test-loopback | |
dependencies: cryptsetup-devel keyutils-libs-devel | |
container: 33 | |
- task: make -f Makefile release | |
dependencies: cryptsetup-devel | |
container: 33 | |
# Fedora 34 | |
- task: make -f Makefile build | |
dependencies: cryptsetup-devel | |
container: 34 | |
- task: make -f Makefile docs-ci | |
dependencies: cryptsetup-devel | |
container: 34 | |
- task: make -f Makefile test | |
dependencies: cryptsetup-devel keyutils-libs-devel | |
container: 34 | |
- task: make -f Makefile test-mutex | |
dependencies: cryptsetup-devel keyutils-libs-devel | |
container: 34 | |
- task: make -f Makefile test-mutex-guard | |
dependencies: cryptsetup-devel keyutils-libs-devel | |
container: 34 | |
- task: make -f Makefile test-loopback | |
dependencies: cryptsetup-devel keyutils-libs-devel | |
container: 34 | |
- task: make -f Makefile release | |
dependencies: cryptsetup-devel | |
container: 34 | |
# Fedora 38 | |
- task: make -f Makefile build | |
dependencies: cryptsetup-devel | |
container: 38 | |
- task: make -f Makefile docs-ci | |
dependencies: cryptsetup-devel | |
container: 38 | |
- task: make -f Makefile test | |
dependencies: cryptsetup-devel keyutils-libs-devel | |
container: 38 | |
- task: make -f Makefile test-mutex | |
dependencies: cryptsetup-devel keyutils-libs-devel | |
container: 38 | |
- task: make -f Makefile test-mutex-guard | |
dependencies: cryptsetup-devel keyutils-libs-devel | |
container: 38 | |
- task: make -f Makefile test-loopback | |
dependencies: cryptsetup-devel keyutils-libs-devel | |
container: 38 | |
- task: make -f Makefile release | |
dependencies: cryptsetup-devel | |
container: 38 | |
runs-on: ubuntu-20.04 | |
container: | |
image: fedora:${{ matrix.container }} | |
options: --privileged -v /dev:/dev | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: ${{ env.TOOLCHAIN }} | |
- name: Install dependencies | |
run: dnf install -y make gcc clang-devel ${{ matrix.dependencies }} | |
- name: Test ${{ matrix.task }} on ${{ env.TOOLCHAIN }} toolchain | |
run: ${{ matrix.task }} | |
checks-with-ci-repo: | |
strategy: | |
matrix: | |
include: | |
- task: > | |
SET_LOWER_BOUNDS=./set_lower_bounds | |
MANIFEST_PATH=../../Cargo.toml | |
make -f ../../Makefile verify-dependency-bounds | |
- task: > | |
SET_LOWER_BOUNDS=./set_lower_bounds | |
MANIFEST_PATH=../../libcryptsetup-rs-sys/Cargo.toml | |
make -f ../../Makefile verify-dependency-bounds-sys | |
runs-on: ubuntu-20.04 | |
container: | |
image: fedora:38 # CURRENT DEVELOPMENT ENVIRONMENT | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install dependencies for Fedora | |
run: > | |
dnf install -y | |
clang | |
cryptsetup-devel | |
curl | |
git | |
make | |
openssl-devel | |
python-requests | |
python-semantic_version | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
components: cargo | |
toolchain: 1.71.1 # CURRENT DEVELOPMENT RUST TOOLCHAIN | |
- name: Check out ci repo | |
run: git clone https://github.com/stratis-storage/ci.git | |
- name: Run ${{ matrix.task }} | |
run: ${{ matrix.task }} | |
working-directory: ./ci/dependency_management | |
# VERIFICATION OF TEST INFRASTRUCTURE | |
yamllint: | |
runs-on: ubuntu-20.04 | |
container: fedora:38 # CURRENT DEVELOPMENT ENVIRONMENT | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install dependencies | |
run: dnf install -y make yamllint | |
- name: Run yamllint | |
run: make -f Makefile yamllint |