Commit d81175b7 authored by Nugine's avatar Nugine
Browse files

ci: refactor

parent c154b42c
Loading
Loading
Loading
Loading
+19 −16
Original line number Diff line number Diff line
@@ -27,8 +27,21 @@ jobs:
          cancel_others: true
          paths_ignore: '["*.md"]'

  develop:
  python:
    needs: skip-check
    if: needs.skip-check.outputs.should_skip != 'true'
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: taiki-e/install-action@just
      - uses: astral-sh/setup-uv@v3
        with:
          enable-cache: true
      - run: just ci-python

  rust:
    needs: skip-check
    if: needs.skip-check.outputs.should_skip != 'true'
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
@@ -39,21 +52,13 @@ jobs:
          - nightly
    steps:
      - uses: actions/checkout@v4
      - uses: taiki-e/install-action@just
      - uses: dtolnay/rust-toolchain@master
        with:
          toolchain: ${{ matrix.toolchain }}
          components: rustfmt, clippy
      - uses: Swatinem/rust-cache@v2
      - uses: taiki-e/install-action@v2
        with:
          tool: just
      - run: cargo fmt --all -- --check
      - run: cargo clippy --all-features --all-targets -- -D warnings
      - run: cargo test --all-features
      - run: |
          just codegen
          ./scripts/assert-unchanged.sh
      - run: cargo install --path crates/s3s-fs --features binary
      - run: just ci-rust

  cross-test:
    needs: skip-check
@@ -63,16 +68,14 @@ jobs:
      fail-fast: false
      matrix:
        os:
          - ubuntu-latest
          - windows-latest
          - macos-latest
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@master
        with:
          toolchain: stable
      - uses: taiki-e/install-action@just
      - uses: dtolnay/rust-toolchain@stable
      - uses: Swatinem/rust-cache@v2
      - run: cargo test --all-features
      - run: just ci-test

  mint:
    needs: skip-check
+22 −0
Original line number Diff line number Diff line
@@ -48,3 +48,25 @@ publish:
    cargo publish -p s3s-aws
    cargo publish -p s3s-fs
    cargo publish -p s3s-test

# ------------------------------------------------

assert_unchanged:
    #!/bin/bash -ex
    [[ -z "$(git status -s)" ]] # https://stackoverflow.com/a/9393642

ci-rust:
    cargo fmt --all --check
    cargo clippy --all-features --all-targets -- -D warnings
    just ci-test
    just codegen
    just assert_unchanged

ci-test:
    cargo test --all-features

ci-python:
    uvx ruff format --check
    uvx ruff check
    just model
    just assert_unchanged