mirror of https://github.com/jdx/mise
166 lines
4.8 KiB
TOML
166 lines
4.8 KiB
TOML
#:schema ./schema/mise-task.json
|
|
|
|
clean = "cargo clean"
|
|
release = "cargo release"
|
|
signal-test = "node ./test/fixtures/signal-test.js"
|
|
ci = { depends = ["format", "build", "test"] }
|
|
lint = { depends = ["lint:*"] }
|
|
|
|
[build]
|
|
alias = "b"
|
|
run = "cargo build --all-features"
|
|
run_windows = "cargo build --features clap_mangen"
|
|
#sources = ["Cargo.*", "src/**/*.rs"]
|
|
#outputs = ["target/debug/mise"]
|
|
|
|
[docs]
|
|
depends = ["docs:setup"]
|
|
dir = "docs"
|
|
run = "bun run docs:dev"
|
|
|
|
["docs:setup"]
|
|
dir = "docs"
|
|
run = ["cd .. && bun i", "bun i"]
|
|
|
|
["docs:build"]
|
|
depends = ["docs:setup"]
|
|
dir = "docs"
|
|
run = "bun run docs:build"
|
|
|
|
["docs:preview"]
|
|
depends = ["docs:build"]
|
|
dir = "docs"
|
|
run = "bun run docs:preview"
|
|
|
|
["docs:demos"]
|
|
description = "Create recordings with vhs"
|
|
dir = "docs"
|
|
run = """
|
|
#!/usr/bin/env bash
|
|
|
|
if ! docker info > /dev/null 2>&1; then
|
|
echo "This script uses docker, and it isn't running - please start docker and try again!"
|
|
exit 1
|
|
fi
|
|
|
|
vhs() {
|
|
docker run --rm -v $(pwd)/tapes/:/data -w /data ghcr.io/charmbracelet/vhs "$@"
|
|
}
|
|
|
|
# Create VHS recordings of all tape files in the assets directory
|
|
for i in $(ls -1 tapes/*.tape); do
|
|
vhs $(basename $i .tape).tape
|
|
done
|
|
"""
|
|
|
|
["render:usage"]
|
|
depends = ["build"]
|
|
env = { CLICOLOR_FORCE = "0" }
|
|
run = [
|
|
"mise usage > mise.usage.kdl",
|
|
"mise generate task-docs > tasks.md",
|
|
"rm -rf docs/cli && mkdir -p docs/cli",
|
|
"usage generate markdown -m --out-dir docs/cli --url-prefix /cli --html-encode --file mise.usage.kdl --replace-pre-with-code-fences",
|
|
"markdownlint --fix docs/cli",
|
|
]
|
|
|
|
["render:completions"]
|
|
depends = ["build"]
|
|
wait_for = ["render:usage"]
|
|
env = { NO_COLOR = "1" }
|
|
run = '''
|
|
#!/usr/bin/env bash
|
|
set -xeuo pipefail
|
|
mise completion bash > completions/mise.bash
|
|
mise completion zsh > completions/_mise
|
|
mise completion fish > completions/mise.fish
|
|
'''
|
|
|
|
["render:settings"]
|
|
run = "tsx xtasks/render/settings.ts"
|
|
depends = ['docs:setup']
|
|
|
|
["render:mangen"]
|
|
depends = ["build"]
|
|
env = { NO_COLOR = "1" }
|
|
run = "mise render-mangen"
|
|
|
|
["render:fig"]
|
|
wait_for = ["render:completions"]
|
|
run = [
|
|
"usage generate fig --file mise.usage.kdl --out-file xtasks/fig/src/mise.ts",
|
|
"tsx xtasks/fig/addCustomGenerators.ts xtasks/fig/src/mise.ts xtasks/fig/src/mise.ts",
|
|
"bun run lint-fig:fix",
|
|
]
|
|
depends = ['docs:setup']
|
|
|
|
["render:help"]
|
|
depends = ["build"]
|
|
env = { NO_COLOR = "1" }
|
|
run = [
|
|
"mise render-help",
|
|
"mise run show-output-on-failure -- mise x node@latest -- npx markdown-magic",
|
|
]
|
|
sources = ["mise"]
|
|
outputs = ["README.md"]
|
|
|
|
[render]
|
|
alias = "render"
|
|
depends = ["render:*"]
|
|
|
|
[snapshots]
|
|
description = "update test snapshots"
|
|
run = "cargo insta test --all-features --accept --unreferenced delete"
|
|
|
|
[test]
|
|
description = "run all tests"
|
|
alias = 't'
|
|
run = ["mise tasks run test:unit", "mise tasks run test:e2e"]
|
|
|
|
["test:unit"]
|
|
description = "run unit tests"
|
|
run = "cargo test --all-features"
|
|
env = { CARGO_TERM_COLOR = "always", "RUST_TEST_THREADS" = "1" }
|
|
|
|
["docker:image"]
|
|
hide = true # docker stuff is not working correctly right now
|
|
description = "build docker image from Dockerfile"
|
|
run = 'docker build --build-arg GITHUB_TOKEN=$GITHUB_API_TOKEN $root -f $root/packaging/dev/Dockerfile -t ghcr.io/jdx/mise:dev'
|
|
|
|
["docker:run"]
|
|
hide = true # docker stuff is not working correctly right now
|
|
description = "run a command inside of development docker container"
|
|
run = 'docker run -ti --rm -e GITHUB_API_TOKEN -e TEST_ALL -v $root:/mise -v /tmp/mise/target:/tmp/mise/target -v /tmp/mise/registry:/tmp/mise/registry -w /mise ghcr.io/jdx/mise:dev'
|
|
depends = ["docker:image"]
|
|
|
|
["docker:cargo"]
|
|
hide = true # docker stuff is not working correctly right now
|
|
description = "run cargo inside of development docker container"
|
|
run = 'mise tasks run docker:run cargo'
|
|
|
|
["docker:mise"]
|
|
hide = true # docker stuff is not working correctly right now
|
|
description = "run mise inside of development docker container"
|
|
run = "mise tasks run -- docker:cargo run --"
|
|
|
|
["docker:e2e"]
|
|
hide = true # docker stuff is not working correctly right now
|
|
description = "run e2e tests inside of development docker container"
|
|
run = "mise tasks run docker:mise run test:e2e"
|
|
|
|
["test:shuffle"]
|
|
run = "cargo +nightly test --all-features -- -Z unstable-options --shuffle"
|
|
|
|
[install-dev]
|
|
run = "cargo install --path . --debug"
|
|
|
|
[xxx]
|
|
hide = true
|
|
tools = { gh = "2.60.0" }
|
|
run = "echo {{arg(name='greeting')}}; sleep 2; echo 2; sleep 2; echo 3; sleep 0.4; echo 4; sleep 1"
|
|
description = "a task for testing"
|
|
|
|
[pre-commit]
|
|
env = { PRE_COMMIT = 1 }
|
|
run = ["mise run lint"]
|