Skip to content

Commit de33ede

Browse files
committed
Simplify packaging script
1 parent 57ec4c5 commit de33ede

1 file changed

Lines changed: 52 additions & 66 deletions

File tree

package.sh

Lines changed: 52 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -1,69 +1,55 @@
11
#!/bin/bash
22
set -euf -o pipefail
33

4-
# build CSSUniversalMenuAPI.zip
5-
dst="./artifacts/CSSUniversalMenuAPI"
6-
dst_shared="$dst/addons/counterstrikesharp/shared"
7-
dst_plugins="$dst/addons/counterstrikesharp/plugins"
8-
9-
# package CSSUniversalMenuAPI
10-
mkdir -p "$dst_shared/CSSUniversalMenuAPI"
11-
src="./src/CSSUniversalMenuAPI/bin/Release/net8.0/publish"
12-
cp -r "$src/." "$dst_shared/CSSUniversalMenuAPI/"
13-
14-
# package UniversalMenu.Compat.MenuManagerApi
15-
mkdir -p "$dst_plugins/UniversalMenu.Compat.MenuManagerApi"
16-
src="./src/UniversalMenu.Compat.MenuManagerApi/bin/Release/net8.0/publish"
17-
cp -r "$src/." "$dst_plugins/UniversalMenu.Compat.MenuManagerApi/"
18-
19-
# package UniversalMenu.Compat.CSSharp
20-
mkdir -p "$dst_plugins/UniversalMenu.Compat.CSSharp"
21-
src="./src/UniversalMenu.Compat.CSSharp/bin/Release/net8.0/publish"
22-
cp -r "$src/." "$dst_plugins/UniversalMenu.Compat.CSSharp/"
23-
# shared part: allows modified methods to load the 0Harmony.dll dependency
24-
mkdir -p "$dst_shared/0Harmony"
25-
mv "$dst_plugins/UniversalMenu.Compat.CSSharp/0Harmony.dll" "$dst_shared/0Harmony/"
26-
27-
# package UniversalMenu.Compat.ScreenMenuAPI # this isn't implemented yet
28-
#mkdir -p "$dst_plugins/UniversalMenu.Compat.ScreenMenuAPI"
29-
#src="./src/UniversalMenu.Compat.ScreenMenuAPI/bin/Release/net8.0/publish"
30-
#cp -r "$src/." "$dst_shared/UniversalMenu.Compat.ScreenMenuAPI/"
31-
32-
# zip CSSUniversalMenuAPI.zip
33-
pushd "$dst"
34-
7z a ../CSSUniversalMenuAPI.zip ./
35-
popd
36-
rm -rf "$dst"
37-
38-
# build UniversalMenu.Driver.ScreenMenuAPI.zip
39-
dst="./artifacts/UniversalMenu.Driver.ScreenMenuAPI"
40-
dst_shared="$dst/addons/counterstrikesharp/shared"
41-
dst_plugins="$dst/addons/counterstrikesharp/plugins"
42-
43-
# package UniversalMenu.Driver.ScreenMenuAPI
44-
mkdir -p "$dst_plugins/UniversalMenu.Driver.ScreenMenuAPI"
45-
src="./src/UniversalMenu.Driver.ScreenMenuAPI/bin/Release/net8.0/publish"
46-
cp -r "$src/." "$dst_plugins/UniversalMenu.Driver.ScreenMenuAPI/"
47-
48-
# zip UniversalMenu.Driver.ScreenMenuAPI.zip
49-
pushd "$dst"
50-
7z a ../UniversalMenu.Driver.ScreenMenuAPI.zip ./
51-
popd
52-
rm -rf "$dst"
53-
54-
55-
# build UniversalMenu.Driver.MenuManagerApi.zip
56-
dst="./artifacts/UniversalMenu.Driver.MenuManagerApi"
57-
dst_shared="$dst/addons/counterstrikesharp/shared"
58-
dst_plugins="$dst/addons/counterstrikesharp/plugins"
59-
60-
# package UniversalMenu.Driver.MenuManagerApi
61-
mkdir -p "$dst_plugins/UniversalMenu.Driver.MenuManagerApi"
62-
src="./src/UniversalMenu.Driver.MenuManagerApi/bin/Release/net8.0/publish"
63-
cp -r "$src/." "$dst_plugins/UniversalMenu.Driver.MenuManagerApi/"
64-
65-
# zip UniversalMenu.Driver.MenuManagerApi.zip
66-
pushd "$dst"
67-
7z a ../UniversalMenu.Driver.MenuManagerApi.zip ./
68-
popd
69-
rm -rf "$dst"
4+
zip_name=""
5+
dst=""
6+
dst_css=""
7+
8+
setup_zip() {
9+
zip_name="$1"
10+
dst="./artifacts/$zip_name"
11+
dst_css="$dst/addons/counterstrikesharp"
12+
}
13+
14+
copy_dir() {
15+
mkdir -p "$dst_css/$2/"
16+
cp -r "$1/." "$dst_css/$2/"
17+
}
18+
19+
move_file() {
20+
mkdir -p "$dst_css/$2/"
21+
mv "$dst_css/$1" "$dst_css/$2/"
22+
}
23+
24+
commit_zip() {
25+
pushd "$dst"
26+
7z a "../$zip_name.zip" ./
27+
popd
28+
rm -rf "$dst"
29+
}
30+
31+
setup_zip CSSUniversalMenuAPI
32+
copy_dir src/CSSUniversalMenuAPI/bin/Release/net8.0/publish shared/CSSUniversalMenuAPI
33+
commit_zip
34+
35+
setup_zip UniversalMenu.Compat.CSSharp
36+
copy_dir src/UniversalMenu.Compat.CSSharp/bin/Release/net8.0/publish plugins/UniversalMenu.Compat.CSSharp
37+
# we move this into a shared location so that injected code can find the dll
38+
move_file plugins/UniversalMenu.Compat.CSSharp/0Harmony.dll shared/0Harmony
39+
commit_zip
40+
41+
setup_zip UniversalMenu.Compat.MenuManagerApi
42+
copy_dir src/UniversalMenu.Compat.MenuManagerApi/bin/Release/net8.0/publish plugins/UniversalMenu.Compat.MenuManagerApi
43+
commit_zip
44+
45+
#setup_zip UniversalMenu.Compat.ScreenMenuAPI
46+
#copy_dir src/UniversalMenu.Compat.ScreenMenuAPI/bin/Release/net8.0/publish plugins/UniversalMenu.Compat.ScreenMenuAPI
47+
#commit_zip
48+
49+
setup_zip UniversalMenu.Driver.ScreenMenuAPI
50+
copy_dir src/UniversalMenu.Driver.ScreenMenuAPI/bin/Release/net8.0/publish shared/UniversalMenu.Driver.ScreenMenuAPI
51+
commit_zip
52+
53+
setup_zip UniversalMenu.Driver.MenuManagerApi
54+
copy_dir src/UniversalMenu.Driver.MenuManagerApi/bin/Release/net8.0/publish shared/UniversalMenu.Driver.MenuManagerApi
55+
commit_zip

0 commit comments

Comments
 (0)