]> gerrit.simantics Code Review - simantics/platform.git/blob - releng/org.simantics.sdk.build.p2.site/sign.sh
04dc132286ff144ffdaf90924b95b6f791405d57
[simantics/platform.git] / releng / org.simantics.sdk.build.p2.site / sign.sh
1 #!/bin/bash
2
3 dir=`dirname $0`
4
5 if [ $# -lt 3 ]; then
6     echo "Usage: sign.sh <keystore location> <signing property file> <TSA URL>"
7     echo ""
8     echo "<signing property file> must contain the following properties:"
9     echo "    jarsigner.alias:     keystore entry alias"
10     echo "    jarsigner.storepass: password for the keystore"
11     echo "    jarsigner.keypass:   password for the key <jarsigner.alias>"
12     echo ""
13     echo "<TSA URL> can be empty is timestamping is not desired."
14     exit -1
15 fi
16
17 keystore=$1
18 signprops=$2
19 tsa=$3
20
21 function signprop {
22     grep "${1}" ${signprops}|cut -d'=' -f2
23 }
24
25 echo "----"
26 echo "script directory: ${dir}"
27 echo "keystore: ${keystore}"
28 echo "signing property file: ${signprops}"
29 echo "TSA URL: ${tsa}"
30
31 keyalias=$(signprop 'jarsigner.alias')
32 storepass=$(signprop 'jarsigner.storepass')
33 keypass=$(signprop 'jarsigner.keypass')
34
35 for jar in `find ${dir}/target/repository/plugins/ -type f -not -ipath '*.source_*.jar'`; do
36     echo "----"
37     if [ -z ${tsa} ]; then
38         echo "Signing $jar"
39         jarsigner -keystore ${keystore} \
40                   -storepass ${storepass} \
41                   -keypass ${keypass} \
42                   -verbose \
43                   $jar \
44                   ${keyalias}
45     else
46         echo "Signing and timestamping $jar"
47         jarsigner -keystore ${keystore} \
48                   -storepass ${storepass} \
49                   -keypass ${keypass} \
50                   -verbose \
51                   -tsa "${tsa}" \
52                   $jar \
53                   ${keyalias}
54     fi
55 done
56