# SPDX-FileCopyrightText: 2024 Topola contributors # # SPDX-License-Identifier: MIT matrix: include: - CHANNEL: stable FEATURES: disable_contracts - CHANNEL: nightly FEATURES: steps: build_cli: image: rust environment: RUST_BACKTRACE: 1 CARGO_TERM_COLOR: always commands: - rustup default "$CHANNEL" - cargo build -p topola-cli --no-default-features --features "$FEATURES" -- when: event: [pull_request, push, tag] path: include: - '.woodpecker/*.yaml' - '*.toml' - 'crates/**' - 'src/**' - 'tests/**' - 'examples/**' exclude: - 'assets/**' - 'LICENSES/**' - 'locales/**' - '*.md' ignore_message: '[ALL]' on_empty: false # Testing is a step instead of a separate flow to reduce Codeberg's CI usage. test: image: rust environment: RUST_BACKTRACE: 1 CARGO_TERM_COLOR: always commands: # Only run tests for stable channel to avoid straining Codeberg's CI. - test "$CHANNEL" = "stable" - cargo test --verbose --no-default-features --features "$FEATURES" when: event: [pull_request, push, tag] path: include: - '.woodpecker/*.yaml' - '*.toml' - 'crates/**' - 'src/**' - 'tests/**' - 'examples/**' exclude: - 'assets/**' - 'LICENSES/**' - 'locales/**' - '*.md' ignore_message: '[ALL]' on_empty: false