-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmk_artifact.sh
executable file
·35 lines (30 loc) · 1.55 KB
/
mk_artifact.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
#!/bin/bash
PRGDIR=`dirname "$0"`
export TASK_HOME=`cd "$PRGDIR" >/dev/null; pwd`
version=`grep "version " -R dub.sdl |awk 'NR==1{gsub(/"/,"");print $2}'`
mk_artifact(){
cd $1
arch=`arch`
targetName=`grep "targetName " -R dub.sdl |awk 'NR==1{gsub(/"/,"");print $2}'`
rm -rf target/$targetName-$version-$arch.bin
mv target/$targetName target/$targetName-$version-$arch.bin
sha1sum target/$targetName-$version-$arch.bin|awk 'NR==1{gsub(/"/,"");print $1}'>> target/$targetName-$version-$arch.bin.sha1
mkdir -p ~/.m2/repository/org/beangle/task/$targetName/$version/
rm -rf ~/.m2/repository/org/beangle/task/$targetName/$version/$targetName-$version-$arch.bin
cp target/$targetName-$version-$arch.bin ~/.m2/repository/org/beangle/task/$targetName/$version/$targetName-$version-$arch.bin
cp target/$targetName-$version-$arch.bin.sha1 ~/.m2/repository/org/beangle/task/$targetName/$version/$targetName-$version-$arch.bin.sha1
cd ..
}
dub clean
dub build --build=release-nobounds --compiler=ldc2
mk_artifact "agent"
mk_artifact "server"
cd $TASK_HOME
rm -rf target
mkdir -p target
cd ~/.m2/repository
zip $TASK_HOME/target/beangle-task-$version.$arch.zip org/beangle/task/beangle-task-agent/$version/beangle-task-agent-$version-$arch.bin \
org/beangle/task/beangle-task-agent/$version/beangle-task-agent-$version-$arch.bin.sha1 \
org/beangle/task/beangle-task-server/$version/beangle-task-server-$version-$arch.bin \
org/beangle/task/beangle-task-server/$version/beangle-task-server-$version-$arch.bin.sha1
gpg -ab $TASK_HOME/target/beangle-task-$version.$arch.zip