mirror of
https://github.com/leptos-rs/leptos
synced 2024-11-10 06:44:17 +00:00
97 lines
2.3 KiB
TOML
97 lines
2.3 KiB
TOML
[tasks.pre-clippy]
|
|
env = { CARGO_MAKE_CLIPPY_ARGS = "--all-targets --all-features -- -D warnings" }
|
|
|
|
[tasks.check-style]
|
|
description = "Check for style violations"
|
|
dependencies = ["check-format-flow", "clippy-flow"]
|
|
|
|
[tasks.check-format]
|
|
args = ["fmt", "--", "--check", "--config-path", "../../"]
|
|
|
|
[tasks.clean-cargo]
|
|
description = "Runs the cargo clean command."
|
|
category = "Cleanup"
|
|
command = "cargo"
|
|
args = ["clean"]
|
|
|
|
[tasks.clean-trunk]
|
|
description = "Runs the trunk clean command."
|
|
category = "Cleanup"
|
|
command = "trunk"
|
|
args = ["clean"]
|
|
|
|
[tasks.clean-node_modules]
|
|
description = "Delete all node_modules directories"
|
|
category = "Cleanup"
|
|
script = '''
|
|
find . -type d -name node_modules | xargs rm -rf
|
|
'''
|
|
|
|
[tasks.clean-playwright]
|
|
description = "Delete playwright directories"
|
|
category = "Cleanup"
|
|
script = '''
|
|
for pw_dir in $(find . -name playwright.config.ts | xargs dirname)
|
|
do
|
|
rm -rf $pw_dir/playwright-report
|
|
done
|
|
'''
|
|
|
|
[tasks.clean-all]
|
|
description = "Delete all temporary directories"
|
|
category = "Cleanup"
|
|
dependencies = ["clean-cargo"]
|
|
|
|
[tasks.test-wasm]
|
|
env = { CARGO_MAKE_WASM_TEST_ARGS = "--headless --chrome" }
|
|
command = "cargo"
|
|
args = ["make", "wasm-pack-test"]
|
|
|
|
[tasks.cargo-leptos-e2e]
|
|
description = "Runs end to end tests with cargo leptos"
|
|
command = "cargo"
|
|
args = ["leptos", "end-to-end"]
|
|
|
|
[tasks.setup-node]
|
|
description = "Install node dependencies and playwright browsers"
|
|
env = { PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD = "1" }
|
|
script = '''
|
|
BOLD="\e[1m"
|
|
GREEN="\e[0;32m"
|
|
RED="\e[0;31m"
|
|
RESET="\e[0m"
|
|
|
|
project_dir=$CARGO_MAKE_WORKING_DIRECTORY
|
|
|
|
# Discover commands
|
|
if command -v pnpm; then
|
|
NODE_CMD=pnpm
|
|
PLAYWRIGHT_CMD=pnpm
|
|
elif command -v npm; then
|
|
NODE_CMD=npm
|
|
PLAYWRIGHT_CMD=npx
|
|
else
|
|
echo "${RED}${BOLD}ERROR${RESET} - pnpm or npm is required by this task"
|
|
exit 1
|
|
fi
|
|
|
|
# Install node dependencies
|
|
for node_path in $(find . -name package.json -not -path '*/node_modules/*')
|
|
do
|
|
node_dir=$(dirname $node_path)
|
|
echo Install node dependencies for $node_dir
|
|
cd $node_dir
|
|
${NODE_CMD} install
|
|
cd ${project_dir}
|
|
done
|
|
|
|
# Install playwright browsers
|
|
for pw_path in $(find . -name playwright.config.ts)
|
|
do
|
|
pw_dir=$(dirname $pw_path)
|
|
echo Install playwright browsers for $pw_dir
|
|
cd $pw_dir
|
|
${PLAYWRIGHT_CMD} playwright install
|
|
cd $project_dir
|
|
done
|
|
'''
|