60 lines
1.3 KiB
Text
60 lines
1.3 KiB
Text
|
|
#!/usr/bin/env bash
|
||
|
|
|
||
|
|
playwright:local() {
|
||
|
|
bash e2e/Taskfile playwright:local "$@"
|
||
|
|
}
|
||
|
|
|
||
|
|
playwright:ui() {
|
||
|
|
bash e2e/Taskfile playwright:ui "$@"
|
||
|
|
}
|
||
|
|
|
||
|
|
refresh_sqlx_db() {
|
||
|
|
rm -f some_user.db
|
||
|
|
for migration in migrations/each_user/*.sql; do
|
||
|
|
echo "Applying $migration..."
|
||
|
|
echo "BEGIN TRANSACTION;$(cat "$migration");COMMIT TRANSACTION;"\
|
||
|
|
| sqlite3 some_user.db
|
||
|
|
done
|
||
|
|
}
|
||
|
|
|
||
|
|
_env() {
|
||
|
|
refresh_sqlx_db > /dev/null
|
||
|
|
DATABASE_URL=sqlite:some_user.db \
|
||
|
|
CACHE_BUST_ASSETS_DIR=static \
|
||
|
|
"$@"
|
||
|
|
}
|
||
|
|
|
||
|
|
_cargo() {
|
||
|
|
_env cargo "$@"
|
||
|
|
}
|
||
|
|
|
||
|
|
edit() {
|
||
|
|
_env nvim
|
||
|
|
}
|
||
|
|
|
||
|
|
deploy_to_server() {
|
||
|
|
where="$1"
|
||
|
|
_cargo build --release
|
||
|
|
rsync -v -essh ./target/release/entretien "$where:~" \
|
||
|
|
&& rsync -rav -essh ./hashed_static "$where:~/" \
|
||
|
|
&& ssh -t "$where" "sudo mv -f entretien /usr/bin/ && sudo rm -rf /var/local/entretien/hashed_static && sudo mv -f hashed_static /var/local/entretien/ && sudo systemctl restart entretien"
|
||
|
|
}
|
||
|
|
|
||
|
|
dev() {
|
||
|
|
find src static migrations | entr -ccdr ./Taskfile _cargo run -- serve "$@"
|
||
|
|
}
|
||
|
|
|
||
|
|
release() {
|
||
|
|
set -euo pipefail
|
||
|
|
bash e2e/Taskfile playwright:ci
|
||
|
|
_cargo test
|
||
|
|
new_tag=$(git-cliff --unreleased --bumped-version)
|
||
|
|
git tag -m "$new_tag" "$new_tag"
|
||
|
|
cargo set-version "${new_tag#v}"
|
||
|
|
mv CHANGELOG.md CHANGELOG.old
|
||
|
|
cat <(git cliff) <(printf "\n") CHANGELOG.old > CHANGELOG.md
|
||
|
|
rm CHANGELOG.old
|
||
|
|
}
|
||
|
|
|
||
|
|
"$@"
|