-
Notifications
You must be signed in to change notification settings - Fork 19
/
Copy pathscaffold.sh
46 lines (43 loc) · 1.03 KB
/
scaffold.sh
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
create() {
package_alias="$1"
case "$package_alias" in
"hyperf")
package="hyperf/hyperf-skeleton"
;;
"laravel")
package="laravel/laravel"
;;
"symfony")
package="symfony/skeleton"
;;
*)
package="$package_alias"
;;
esac
run -- composer create-project "$package" "$2"
}
init() {
skeleton_alias="$1"
case "$skeleton_alias" in
"phpunit")
skeleton="phpunit.xml"
;;
"php-cs-fixer")
skeleton=".php-cs-fixer.php"
;;
"phpstan")
skeleton="phpstan.neon"
;;
"infection")
skeleton="infection.json5"
;;
"box")
skeleton="box.json"
;;
*)
echo -e "\033[0;31mSkeleton ($skeleton_alias) not handled.\033[0m"
exit 1
esac
cp "$PHPCTL_DIR/skeletons/$skeleton" "$skeleton"
echo -e "\033[0;32m$skeleton created!\033[0m"
}