just 类似make 的命令行runner

just 类似makefile 的命令行runner,但是相比makefile 简洁清晰了不少,同时也类似make的makefile 提供了一个justfile 方便编写各类命令

一个参考示例

dev:
    just fetch
    just fmt
    just codegen
    just lint
    just test

fetch:
    uv sync
    cargo fetch

fmt:
    uvx ruff format
    cargo fmt

lint:
    uvx ruff check
    cargo clippy --workspace --all-features --all-targets

test:
    cargo test --workspace --all-features --all-targets

doc:
    RUSTDOCFLAGS="--cfg docsrs" cargo +nightly doc --open --no-deps --all-features

crawl:
    uv run data/crawl.py update

codegen:
    cargo run -p s3s-codegen
    cargo fmt
    cargo check

install name *ARGS:
    uv run ./scripts/install.py {{name}} {{ARGS}}

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

sync-version:
    cargo set-version -p s3s            0.12.0-dev
    cargo set-version -p s3s-aws        0.12.0-dev
    cargo set-version -p s3s-model      0.12.0-dev
    cargo set-version -p s3s-policy     0.12.0-dev
    cargo set-version -p s3s-test       0.12.0-dev
    cargo set-version -p s3s-proxy      0.12.0-dev
    cargo set-version -p s3s-fs         0.12.0-dev
    cargo set-version -p s3s-e2e        0.12.0-dev

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

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

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

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

说明

因为just 是基于rust 编写的,在rust 社区此工具使用率还是挺高的,不少rust 项目都有使用到了此工具,值得尝试下

参考资料

https://github.com/casey/just

posted on 2025-09-12 08:00  荣锋亮  阅读(11)  评论(0)    收藏  举报

导航