jirun 0.7.0

A Cli Generating JIRA sub-tasks from a template with a specified parent
Documentation
name: Rust CI

on:
  workflow_dispatch:
  pull_request:
    branches: [main]
    paths-ignore:
      - '**.md'
      - 'docs/**'
      - 'LICENSE'
permissions:
  contents: read
  pull-requests: read

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

jobs:
  pr_naming:
    name: conventional commits
    runs-on: ubuntu-latest
    steps:
      - name: Lint Commit Messages
        uses: wagoid/commitlint-github-action@v6

  check:
    name: Code Quality & Tests
    runs-on: ubuntu-latest

    steps:
      - name: Checkout Code
        uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - name: Cache Rust Dependencies
        uses: actions/cache@v3
        with:
          path: |
            ~/.cargo/registry
            ~/.cargo/git
            target
          key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
          restore-keys: |
            ${{ runner.os }}-cargo-

      - name: Set up Rust
        uses: dtolnay/rust-toolchain@stable
        with:
          components: clippy, rustfmt

      - name: Format + Clippy + Tests
        run: |
          cargo fmt -- --check
          cargo clippy --all-targets --all-features -- -D warnings
          cargo test --all --locked