Skip to content

Build with Nix Workflow #43

Build with Nix Workflow

Build with Nix Workflow #43

Workflow file for this run

name: Build with Nix Workflow
on:
schedule:
- cron: '0 0 * * 1'
workflow_dispatch:
jobs:
build:
strategy:
matrix:
features:
- "async-std-executor,channel-async-std,logging-utils"
- "async-std-executor,channel-flume,logging-utils"
- "tokio-executor,channel-tokio,logging-utils"
- "tokio-executor,channel-flume,logging-utils"
runs-on: ubuntu-latest
timeout-minutes: 60
if: ${{ github.actor != 'dependabot[bot]' }}
steps:
- uses: styfle/cancel-workflow-action@0.11.0
name: Cancel Outdated Builds
with:
all_but_latest: true
access_token: ${{ github.token }}
- name: Install Nix
uses: cachix/install-nix-action@v22
- name: Checkout Repository
uses: actions/checkout@v3
- name: Format
run: |
nix develop -c cargo fmt -- --check
- name: Build
run: |
nix develop -c cargo build --all-targets --workspace --features "${{ matrix.features }}" --release
- name: Test
run: |
nix develop -c cargo test --release --all-targets --workspace --features "${{ matrix.features }}"
- name: Lint
run: |
nix develop -c cargo clippy --workspace --all-targets --features "${{ matrix.features }}" --bins --tests --examples -- -D warnings