mirror of
https://github.com/casey/just.git
synced 2024-11-26 00:24:22 +03:00
Add groups to project justfile (#2351)
This commit is contained in:
parent
a440a6ac52
commit
ab7105afce
30
justfile
30
justfile
@ -8,54 +8,69 @@ log := "warn"
|
|||||||
|
|
||||||
export JUST_LOG := log
|
export JUST_LOG := log
|
||||||
|
|
||||||
|
[group: 'dev']
|
||||||
watch +args='test':
|
watch +args='test':
|
||||||
cargo watch --clear --exec '{{ args }}'
|
cargo watch --clear --exec '{{ args }}'
|
||||||
|
|
||||||
|
[group: 'test']
|
||||||
test:
|
test:
|
||||||
cargo test --all
|
cargo test --all
|
||||||
|
|
||||||
|
[group: 'check']
|
||||||
ci: forbid test build-book clippy
|
ci: forbid test build-book clippy
|
||||||
cargo fmt --all -- --check
|
cargo fmt --all -- --check
|
||||||
cargo update --locked --package just
|
cargo update --locked --package just
|
||||||
|
|
||||||
|
[group: 'check']
|
||||||
fuzz:
|
fuzz:
|
||||||
cargo +nightly fuzz run fuzz-compiler
|
cargo +nightly fuzz run fuzz-compiler
|
||||||
|
|
||||||
|
[group: 'misc']
|
||||||
run:
|
run:
|
||||||
cargo run
|
cargo run
|
||||||
|
|
||||||
# only run tests matching PATTERN
|
# only run tests matching PATTERN
|
||||||
|
[group: 'test']
|
||||||
filter PATTERN:
|
filter PATTERN:
|
||||||
cargo test {{PATTERN}}
|
cargo test {{PATTERN}}
|
||||||
|
|
||||||
|
[group: 'misc']
|
||||||
build:
|
build:
|
||||||
cargo build
|
cargo build
|
||||||
|
|
||||||
|
[group: 'misc']
|
||||||
fmt:
|
fmt:
|
||||||
cargo fmt --all
|
cargo fmt --all
|
||||||
|
|
||||||
|
[group: 'check']
|
||||||
shellcheck:
|
shellcheck:
|
||||||
shellcheck www/install.sh
|
shellcheck www/install.sh
|
||||||
|
|
||||||
|
[group: 'doc']
|
||||||
man:
|
man:
|
||||||
mkdir -p man
|
mkdir -p man
|
||||||
cargo run -- --man > man/just.1
|
cargo run -- --man > man/just.1
|
||||||
|
|
||||||
|
[group: 'doc']
|
||||||
view-man: man
|
view-man: man
|
||||||
man man/just.1
|
man man/just.1
|
||||||
|
|
||||||
# add git log messages to changelog
|
# add git log messages to changelog
|
||||||
|
[group: 'release']
|
||||||
update-changelog:
|
update-changelog:
|
||||||
echo >> CHANGELOG.md
|
echo >> CHANGELOG.md
|
||||||
git log --pretty='format:- %s' >> CHANGELOG.md
|
git log --pretty='format:- %s' >> CHANGELOG.md
|
||||||
|
|
||||||
|
[group: 'release']
|
||||||
update-contributors:
|
update-contributors:
|
||||||
cargo run --release --package update-contributors
|
cargo run --release --package update-contributors
|
||||||
|
|
||||||
|
[group: 'check']
|
||||||
outdated:
|
outdated:
|
||||||
cargo outdated -R
|
cargo outdated -R
|
||||||
|
|
||||||
# publish current GitHub master branch
|
# publish current GitHub master branch
|
||||||
|
[group: 'release']
|
||||||
publish:
|
publish:
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -euxo pipefail
|
set -euxo pipefail
|
||||||
@ -70,10 +85,12 @@ publish:
|
|||||||
cd ../..
|
cd ../..
|
||||||
rm -rf tmp/release
|
rm -rf tmp/release
|
||||||
|
|
||||||
|
[group: 'release']
|
||||||
readme-version-notes:
|
readme-version-notes:
|
||||||
grep '<sup>master</sup>' README.md
|
grep '<sup>master</sup>' README.md
|
||||||
|
|
||||||
# clean up feature branch BRANCH
|
# clean up feature branch BRANCH
|
||||||
|
[group: 'dev']
|
||||||
done BRANCH=`git rev-parse --abbrev-ref HEAD`:
|
done BRANCH=`git rev-parse --abbrev-ref HEAD`:
|
||||||
git checkout master
|
git checkout master
|
||||||
git diff --no-ext-diff --quiet --exit-code
|
git diff --no-ext-diff --quiet --exit-code
|
||||||
@ -82,10 +99,12 @@ done BRANCH=`git rev-parse --abbrev-ref HEAD`:
|
|||||||
git branch -D {{BRANCH}}
|
git branch -D {{BRANCH}}
|
||||||
|
|
||||||
# install just from crates.io
|
# install just from crates.io
|
||||||
|
[group: 'misc']
|
||||||
install:
|
install:
|
||||||
cargo install -f just
|
cargo install -f just
|
||||||
|
|
||||||
# install development dependencies
|
# install development dependencies
|
||||||
|
[group: 'dev']
|
||||||
install-dev-deps:
|
install-dev-deps:
|
||||||
rustup install nightly
|
rustup install nightly
|
||||||
rustup update nightly
|
rustup update nightly
|
||||||
@ -95,19 +114,24 @@ install-dev-deps:
|
|||||||
cargo install mdbook mdbook-linkcheck
|
cargo install mdbook mdbook-linkcheck
|
||||||
|
|
||||||
# everyone's favorite animate paper clip
|
# everyone's favorite animate paper clip
|
||||||
|
[group: 'check']
|
||||||
clippy:
|
clippy:
|
||||||
cargo clippy --all --all-targets --all-features -- --deny warnings
|
cargo clippy --all --all-targets --all-features -- --deny warnings
|
||||||
|
|
||||||
|
[group: 'check']
|
||||||
forbid:
|
forbid:
|
||||||
./bin/forbid
|
./bin/forbid
|
||||||
|
|
||||||
|
[group: 'dev']
|
||||||
replace FROM TO:
|
replace FROM TO:
|
||||||
sd '{{FROM}}' '{{TO}}' src/*.rs
|
sd '{{FROM}}' '{{TO}}' src/*.rs
|
||||||
|
|
||||||
|
[group: 'demo']
|
||||||
test-quine:
|
test-quine:
|
||||||
cargo run -- quine
|
cargo run -- quine
|
||||||
|
|
||||||
# make a quine, compile it, and verify it
|
# make a quine, compile it, and verify it
|
||||||
|
[group: 'demo']
|
||||||
quine:
|
quine:
|
||||||
mkdir -p tmp
|
mkdir -p tmp
|
||||||
@echo '{{quine-text}}' > tmp/gen0.c
|
@echo '{{quine-text}}' > tmp/gen0.c
|
||||||
@ -135,15 +159,18 @@ quine-text := '
|
|||||||
}
|
}
|
||||||
'
|
'
|
||||||
|
|
||||||
|
[group: 'test']
|
||||||
test-completions:
|
test-completions:
|
||||||
./tests/completions/just.bash
|
./tests/completions/just.bash
|
||||||
|
|
||||||
|
[group: 'check']
|
||||||
build-book:
|
build-book:
|
||||||
cargo run --package generate-book
|
cargo run --package generate-book
|
||||||
mdbook build book/en
|
mdbook build book/en
|
||||||
mdbook build book/zh
|
mdbook build book/zh
|
||||||
|
|
||||||
# run all polyglot recipes
|
# run all polyglot recipes
|
||||||
|
[group: 'demo']
|
||||||
polyglot: _python _js _perl _sh _ruby
|
polyglot: _python _js _perl _sh _ruby
|
||||||
|
|
||||||
_python:
|
_python:
|
||||||
@ -173,9 +200,11 @@ _ruby:
|
|||||||
puts "Hello from ruby!"
|
puts "Hello from ruby!"
|
||||||
|
|
||||||
# Print working directory, for demonstration purposes!
|
# Print working directory, for demonstration purposes!
|
||||||
|
[group: 'demo']
|
||||||
pwd:
|
pwd:
|
||||||
echo {{invocation_directory()}}
|
echo {{invocation_directory()}}
|
||||||
|
|
||||||
|
[group: 'test']
|
||||||
test-bash-completions:
|
test-bash-completions:
|
||||||
rm -rf tmp
|
rm -rf tmp
|
||||||
mkdir -p tmp/bin
|
mkdir -p tmp/bin
|
||||||
@ -186,6 +215,7 @@ test-bash-completions:
|
|||||||
echo 'bar:' > tmp/foo.just
|
echo 'bar:' > tmp/foo.just
|
||||||
cd tmp && PATH="`realpath bin`:$PATH" bash --init-file just.bash
|
cd tmp && PATH="`realpath bin`:$PATH" bash --init-file just.bash
|
||||||
|
|
||||||
|
[group: 'test']
|
||||||
test-release-workflow:
|
test-release-workflow:
|
||||||
-git tag -d test-release
|
-git tag -d test-release
|
||||||
-git push origin :test-release
|
-git push origin :test-release
|
||||||
|
Loading…
Reference in New Issue
Block a user