Skip to content

Enable debian 11 and 12 workflows #745

Enable debian 11 and 12 workflows

Enable debian 11 and 12 workflows #745

Workflow file for this run

name: Test
on:
push:
branches: [main]
pull_request:
release:
types: [published]
schedule:
- cron: '25 3 * * *'
env:
CARGO_TERM_COLOR: always
jobs:
build-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: ${{ github.event.schedule && 'nightly' || 'stable' }}
- name: Build
run: cargo build --verbose
- name: Run tests
run: cargo test --verbose
coverage:
runs-on: ubuntu-latest
container:
image: xd009642/tarpaulin:develop
options: --security-opt seccomp=unconfined
steps:
- uses: actions/checkout@v4
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: ${{ github.event.schedule && 'nightly' || 'stable' }}
- name: Generate code coverage
run: cargo tarpaulin --all-features --workspace --timeout 120 --out xml
- uses: codecov/codecov-action@v3
with:
fail_ci_if_error: true
build-debian-10:
runs-on: ubuntu-latest
container: debian:10
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: |
apt-get update
apt-get -y install build-essential dpkg-dev ca-certificates sudo curl
apt-get -y build-dep .
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: ${{ github.event.schedule && 'nightly' || 'stable' }}
- name: Build
run: cargo build --verbose
build-debian-11:
runs-on: ubuntu-latest
container: debian:11
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: |
apt-get update
apt-get -y install build-essential dpkg-dev ca-certificates sudo curl
apt-get -y build-dep .
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: ${{ github.event.schedule && 'nightly' || 'stable' }}
- name: Build
run: cargo build --verbose
build-debian-12:
runs-on: ubuntu-latest
container: debian:12
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: |
apt-get update
apt-get -y install build-essential dpkg-dev ca-certificates sudo curl
apt-get -y build-dep .
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: ${{ github.event.schedule && 'nightly' || 'stable' }}
- name: Build
run: cargo build --verbose
clippy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: ${{ github.event.schedule && 'nightly' || 'stable' }}
- run: rustup component add clippy
- name: rust-clippy-check
uses: actions-rs/clippy-check@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
build-debian-package-10:
runs-on: ubuntu-latest
container: debian:10
steps:
- uses: actions/checkout@v4
with:
path: clone
- name: Install dependencies
run: |
apt-get update
apt-get install -y build-essential dpkg-dev ca-certificates sudo curl
cd clone
apt-get build-dep -y .
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: ${{ github.event.schedule && 'nightly' || 'stable' }}
- name: Build package
run: |
debian/rules vendor
dpkg-buildpackage --no-sign
working-directory: clone
- uses: actions/upload-artifact@v3
with:
name: deb-package
path: |
./*
!./clone/**
build-debian-package-11:
runs-on: ubuntu-latest
container: debian:11
steps:
- uses: actions/checkout@v4
with:
path: clone
- name: Install dependencies
run: |
apt-get update
apt-get install -y build-essential dpkg-dev ca-certificates sudo curl
cd clone
apt-get build-dep -y .
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: ${{ github.event.schedule && 'nightly' || 'stable' }}
- name: Build package
run: |
debian/rules vendor
dpkg-buildpackage --no-sign
working-directory: clone
- uses: actions/upload-artifact@v3
with:
name: deb-package
path: |
./*
!./clone/**
build-debian-package-12:
runs-on: ubuntu-latest
container: debian:12
steps:
- uses: actions/checkout@v4
with:
path: clone
- name: Install dependencies
run: |
apt-get update
apt-get install -y build-essential dpkg-dev ca-certificates sudo curl
cd clone
apt-get build-dep -y .
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: ${{ github.event.schedule && 'nightly' || 'stable' }}
- name: Build package
run: |
debian/rules vendor
dpkg-buildpackage --no-sign
working-directory: clone
- uses: actions/upload-artifact@v3
with:
name: deb-package
path: |
./*
!./clone/**
run-ci-ubuntu-latest:
runs-on: ubuntu-latest
needs: [build-debian-package]

Check failure on line 200 in .github/workflows/test.yml

View workflow run for this annotation

GitHub Actions / Test

Invalid workflow file

The workflow is not valid. .github/workflows/test.yml (Line: 200, Col: 13): Job 'run-ci-ubuntu-latest' depends on unknown job 'build-debian-package'. .github/workflows/test.yml (Line: 271, Col: 13): Job 'create-release' depends on job 'run-ci-ubuntu-latest' which creates a cycle in the dependency graph.
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v3
with:
name: deb-package
- name: CI
run: ci/test.sh
env:
HAVE_SYSTEMD: "1"
run-ci-debian-10:
runs-on: ubuntu-latest
container: debian:10
needs: [build-debian-package-10]
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: |
apt-get update
apt-get -y install build-essential
- uses: actions/download-artifact@v3
with:
name: deb-package
- name: CI
run: ci/test.sh
env:
HAVE_SYSTEMD: "0"
run-ci-debian-11:
runs-on: ubuntu-latest
container: debian:11
needs: [build-debian-package-11]
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: |
apt-get update
apt-get -y install build-essential
- uses: actions/download-artifact@v3
with:
name: deb-package
- name: CI
run: ci/test.sh
env:
HAVE_SYSTEMD: "0"
run-ci-debian-12:
runs-on: ubuntu-latest
container: debian:12
needs: [build-debian-package-12]
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: |
apt-get update
apt-get -y install build-essential
- uses: actions/download-artifact@v3
with:
name: deb-package
- name: CI
run: ci/test.sh
env:
HAVE_SYSTEMD: "0"
create-release:
runs-on: ubuntu-latest
needs: [run-ci-ubuntu-latest, run-ci-debian-10, run-ci-debian-11, run-ci-debian-12]
if: github.event.release
steps:
- uses: actions/download-artifact@v3
with:
name: deb-package
- uses: softprops/action-gh-release@v2
with:
files: "*"
tag_name: ${{ github.event.release.tag_name }}