@@ -50,19 +50,36 @@ if [[ $@ == *"help"* ]]; then
50
50
exit_with_usage
51
51
fi
52
52
53
- for env in ASF_USERNAME ASF_PASSWORD GPG_PASSPHRASE RELEASE_RC; do
54
- if [ -z " ${! env} " ]; then
55
- echo " ERROR: $env must be set to run this script"
56
- exit_with_usage
57
- fi
58
- done
59
-
60
53
# Explicitly set locale in order to make `sort` output consistent across machines.
61
54
# See https://stackoverflow.com/questions/28881 for more details.
62
55
export LC_ALL=C
63
56
57
+ # Setup env
58
+
64
59
# Commit ref to checkout when building
65
- GIT_REF=${GIT_REF:- master}
60
+ if [ -z " $GIT_REF " ]; then
61
+ read -p " Choose git branch/tag [master]: " GIT_REF
62
+ GIT_REF=${GIT_REF:- master}
63
+ echo $GIT_REF
64
+ fi
65
+
66
+ # Set RELEASE_RC
67
+ if [ -z " $RELEASE_RC " ]; then
68
+ read -p " Choose RC [rc1]: " RELEASE_RC
69
+ RELEASE_RC=${RELEASE_RC:- rc1}
70
+ echo $RELEASE_RC
71
+ fi
72
+
73
+ # Get ASF Login
74
+ if [ -z " $ASF_USERNAME " ]; then
75
+ read -p " ASF username: " ASF_USERNAME
76
+ echo $ASF_USERNAME
77
+ fi
78
+
79
+ if [ -z " $ASF_PASSWORD " ]; then
80
+ read -s -p " ASF password: " ASF_PASSWORD
81
+ echo
82
+ fi
66
83
67
84
# Destination directory on remote server
68
85
RELEASE_STAGING_LOCATION=" https://dist.apache.org/repos/dist/dev/incubator/livy"
@@ -74,7 +91,11 @@ BASE_DIR=$(pwd)
74
91
75
92
MVN=" mvn"
76
93
77
- rm -rf incubator-livy
94
+ # Use temp staging dir for release process
95
+ rm -rf release-staging
96
+ mkdir release-staging
97
+ cd release-staging
98
+
78
99
git clone https://git-wip-us.apache.org/repos/asf/incubator-livy.git
79
100
cd incubator-livy
80
101
git checkout $GIT_REF
@@ -96,11 +117,11 @@ if [[ "$1" == "package" ]]; then
96
117
echo " Packaging release tarballs"
97
118
cp -r incubator-livy livy-$LIVY_VERSION -src
98
119
zip -r livy-$LIVY_VERSION -src.zip livy-$LIVY_VERSION -src
99
- echo $GPG_PASSPHRASE | $GPG --passphrase-fd 0 --armour --output livy-$LIVY_VERSION -src.zip.asc \
120
+ echo " " | $GPG --passphrase-fd 0 --armour --output livy-$LIVY_VERSION -src.zip.asc \
100
121
--detach-sig livy-$LIVY_VERSION -src.zip
101
- echo $GPG_PASSPHRASE | $GPG --passphrase-fd 0 --print-md MD5 livy-$LIVY_VERSION -src.zip > \
122
+ echo " " | $GPG --passphrase-fd 0 --print-md MD5 livy-$LIVY_VERSION -src.zip > \
102
123
livy-$LIVY_VERSION -src.zip.md5
103
- echo $GPG_PASSPHRASE | $GPG --passphrase-fd 0 --print-md \
124
+ echo " " | $GPG --passphrase-fd 0 --print-md \
104
125
SHA512 livy-$LIVY_VERSION -src.zip > livy-$LIVY_VERSION -src.zip.sha512
105
126
rm -rf livy-$LIVY_VERSION -src
106
127
@@ -115,13 +136,13 @@ if [[ "$1" == "package" ]]; then
115
136
116
137
echo " Copying and signing regular binary distribution"
117
138
cp assembly/target/livy-$LIVY_VERSION -bin.zip .
118
- echo $GPG_PASSPHRASE | $GPG --passphrase-fd 0 --armour \
139
+ echo " " | $GPG --passphrase-fd 0 --armour \
119
140
--output livy-$LIVY_VERSION -bin.zip.asc \
120
141
--detach-sig livy-$LIVY_VERSION -bin.zip
121
- echo $GPG_PASSPHRASE | $GPG --passphrase-fd 0 --print-md \
142
+ echo " " | $GPG --passphrase-fd 0 --print-md \
122
143
MD5 livy-$LIVY_VERSION -bin.zip > \
123
144
livy-$LIVY_VERSION -bin.zip.md5
124
- echo $GPG_PASSPHRASE | $GPG --passphrase-fd 0 --print-md \
145
+ echo " " | $GPG --passphrase-fd 0 --print-md \
125
146
SHA512 livy-$LIVY_VERSION -bin.zip > \
126
147
livy-$LIVY_VERSION -bin.zip.sha512
127
148
147
168
148
169
if [[ " $1 " == " publish-release" ]]; then
149
170
tmp_dir=$( mktemp -d livy-repo-XXXXX)
150
- tmp_repo=` readlink -f " $tmp_dir " `
171
+ # the following recreates `readlink -f "$tmp_dir"` since readlink -f is unsupported on MacOS
172
+ cd $tmp_dir
173
+ tmp_repo=$( pwd)
174
+ cd ..
151
175
152
176
cd incubator-livy
153
177
# Publish Livy to Maven release repo
@@ -176,7 +200,7 @@ if [[ "$1" == "publish-release" ]]; then
176
200
echo " Creating hash and signature files"
177
201
for file in $( find . -type f)
178
202
do
179
- echo $GPG_PASSPHRASE | $GPG --passphrase-fd 0 --output $file .asc \
203
+ echo " " | $GPG --passphrase-fd 0 --output $file .asc \
180
204
--detach-sig --armour $file ;
181
205
if [ $( command -v md5) ]; then
182
206
# Available on OS X; -q to keep only hash
@@ -212,5 +236,5 @@ if [[ "$1" == "publish-release" ]]; then
212
236
fi
213
237
214
238
cd ..
215
- rm -rf incubator-livy
239
+ rm -rf release-staging
216
240
echo " ERROR: expects to be called with 'package', 'publish-release'"
0 commit comments