Skip to content

fix: バックエンドのCIを修正 #30

fix: バックエンドのCIを修正

fix: バックエンドのCIを修正 #30

Workflow file for this run

name: Backend CI
on:
push:
branches:
- main
pull_request:
workflow_dispatch:
jobs:
changes:
name: Changes
runs-on: ubuntu-24.04
outputs:
backend: ${{ steps.filter.outputs.backend }}
workflows: ${{ steps.filter.outputs.workflows }}
steps:
- uses: actions/checkout@v4
- name: Check backend files changed
uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
with:
filters: |
backend:
- 'backend/**'
workflows:
- '.github/workflows/backend-ci.yml'
format:
name: Format
runs-on: ubuntu-24.04
needs: changes
if: needs.changes.outputs.backend == 'true' || needs.changes.outputs.workflows == 'true'
defaults:
run:
working-directory: ./backend
steps:
- uses: actions/checkout@v4
- name: Cache dependencies
uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3
- name: Install Rust toolchain
run: rustup toolchain install stable
- name: Install rustfmt
run: rustup component add rustfmt
- name: Check formatting
run: cargo fmt --all -- --check
lint:
name: Lint
runs-on: ubuntu-24.04
needs: changes
if: needs.changes.outputs.backend == 'true' || needs.changes.outputs.workflows == 'true'
defaults:
run:
working-directory: ./backend
steps:
- uses: actions/checkout@v4
- name: Cache dependencies
uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3
- name: Install Rust toolchain
run: rustup toolchain install stable
- name: Install clippy
run: rustup component add clippy
- name: Check linting
run: cargo clippy -- -D warnings
build:
name: Build
runs-on: ubuntu-24.04
needs: changes
if: needs.changes.outputs.backend == 'true' || needs.changes.outputs.workflows == 'true'
defaults:
run:
working-directory: ./backend
steps:
- uses: actions/checkout@v4
- name: Cache dependencies
uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3
- name: Install Rust toolchain
run: rustup toolchain install stable
- name: Build
run: cargo build
test:
name: Test
runs-on: ubuntu-24.04
needs: changes
if: needs.changes.outputs.backend == 'true' || needs.changes.outputs.workflows == 'true'
defaults:
run:
working-directory: ./backend
steps:
- uses: actions/checkout@v4
- name: Cache dependencies
uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3
- name: Install Rust toolchain
run: rustup toolchain install stable
- name: Test
run: cargo test
machete:
name: Machete
runs-on: ubuntu-24.04
needs: changes
if: needs.changes.outputs.backend == 'true' || needs.changes.outputs.workflows == 'true'
defaults:
run:
working-directory: ./backend
steps:
- uses: actions/checkout@v4
- name: Cache dependencies
uses: Swatinem/rust-cache@23bce251a8cd2ffc3c1075eaa2367cf899916d84 # v2.7.3
- name: Install Rust toolchain
run: rustup toolchain install stable
- name: Install machete
run: cargo install cargo-machete
- name: Run machete
run: cargo machete