aboutsummaryrefslogtreecommitdiff
path: root/build-release.sh
diff options
context:
space:
mode:
Diffstat (limited to 'build-release.sh')
-rwxr-xr-xbuild-release.sh32
1 files changed, 32 insertions, 0 deletions
diff --git a/build-release.sh b/build-release.sh
new file mode 100755
index 0000000..56fad6a
--- /dev/null
+++ b/build-release.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+set -e
+
+if ! command -v docker; then
+ printf "%s\n" "[err] docker not found"
+ exit 1
+fi
+
+docker run --rm -it -v $(pwd):/mnt mono:latest bash -c '
+DEBIAN_FRONTEND=noninteractive apt-get update
+DEBIAN_FRONTEND=noninteractive apt-get install -y git zip
+git config --global --add safe.directory /mnt
+cd /mnt
+mkdir -p build
+REPO_NAME=$(basename $(git remote get-url origin))
+REPO_NAME="${REPO_NAME%.git}"
+
+nuget restore SharpAMSIGhosting.sln
+msbuild SharpAMSIGhosting.sln /p:Configuration=Release /p:Platform="Any CPU"
+msbuild SharpAMSIGhosting.sln /p:Configuration=Release /p:Platform=x64
+msbuild SharpAMSIGhosting.sln /p:Configuration=Release /p:Platform=x86
+
+mv SharpAMSIGhosting/bin/Release/SharpAMSIGhosting.exe build/SharpAMSIGhosting-AnyCPU.exe
+mv SharpAMSIGhosting/bin/x64/Release/SharpAMSIGhosting.exe build/SharpAMSIGhosting-x64.exe
+mv SharpAMSIGhosting/bin/x86/Release/SharpAMSIGhosting.exe build/SharpAMSIGhosting-x86.exe
+
+zip -r "${REPO_NAME}-release.zip" LICENSE README.md build/
+rm -rf SharpAMSIGhosting/bin SharpAMSIGhosting/obj
+rm -rf build
+'
+
+printf "%s\n" "[inf] finished building ${repo_name}"