-
Notifications
You must be signed in to change notification settings - Fork 19
Expand file tree
/
Copy pathjustfile
More file actions
72 lines (61 loc) · 2.44 KB
/
justfile
File metadata and controls
72 lines (61 loc) · 2.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# The first recipe in a justfile is considered the default recipe,
# which means it runs when `just` is called with no arguments
default: list-commands
list-commands:
@just --list --justfile {{justfile()}} --list-heading $'\nMonorepo recipes:\n'
# Prepares the repo for development
setup:
# ignore personal vscode settings. to contribute a change, use `just stop-ignore $file`
@just ignore .vscode/settings.json api/.vscode/settings.json web/.vscode/settings.json
# ignore api local-state files
@just ignore api/dev/states/myservers.cfg api/dev/Unraid.net/myservers.cfg
pnpm install
# Removes all node_modules directories in the repository
clean-modules:
#!/usr/bin/env bash
echo "Finding and removing all node_modules directories..."
find . -name "node_modules" -type d -not -path "*/node_modules/*" | while read dir; do
echo "Removing: $dir"
rm -rf "$dir"
done
echo "All node_modules directories have been removed."
# Removes all build artifacts (dist, .nuxt, .output, coverage, etc.)
clean-build:
#!/usr/bin/env bash
echo "Finding and removing build artifacts..."
build_dirs=("dist" ".nuxt" ".output" "coverage" "deploy")
for build_dir in "${build_dirs[@]}"; do
find . -name "$build_dir" -type d | while read dir; do
echo "Removing: $dir"
rm -rf "$dir"
done
done
echo "All build artifacts have been removed."
# restore notification files under api/dev
restore-notifications:
git checkout ./api/dev/notifications
# starts ignoring a file already tracked by git. (gitignore will not apply to these files)
[group('git')]
[no-cd]
ignore +files:
#!/usr/bin/env bash
for file in {{ files }}; do
if [ ! -f "$file" ]; then
echo "Warning: $file does not exist"
continue
fi
git update-index --skip-worktree "$file"
done
# resumes normal tracking of an ignored tracked file.
[group('git')]
[no-cd]
stop-ignoring file:
git update-index --no-skip-worktree {{ file }}
# lists tracked files where further changes are being ignored.
[group('git')]
list-ignored:
-git ls-files -v | grep '^S'
# Checks a node.js project's compliance with GPL-2.0-or-later.
[no-cd]
@compliance:
pnpx license-checker --excludePrivatePackages --direct --production --onlyAllow="MIT;BSD-2-Clause;BSD-3-Clause;ISC;Apache-2.0;Zlib;X11;Python-2.0;Artistic-2.0;PostgreSQL;GPL-2.0-or-later;GPL-3.0;AGPL-3.0;LGPL-2.1;LGPL-3.0"