-
Notifications
You must be signed in to change notification settings - Fork 38
/
update-versions.sh
executable file
·53 lines (48 loc) · 1.12 KB
/
update-versions.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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/bin/bash
VERSION=$1
FILE_NAME=package.json
if [[ "$1" == "" ]]; then
echo 'usage: update-versions.sh <SEMVER>'
exit 1
fi
PKG_DIRS="utils
test-utils
cdn-location
geoip-location
proto-rpc
autocertifier-client
dht
autocertifier-server
trackerless-network
sdk
cli-tools
node"
PKG_NAMES="@streamr/utils
@streamr/test-utils
@streamr/cdn-location
@streamr/geoip-location
@streamr/proto-rpc
@streamr/autocertifier-client
@streamr/dht
@streamr/autocertifier-server
@streamr/trackerless-network
@streamr/sdk
@streamr/cli-tools
@streamr/node
"
# Update package versions
for pkg in $PKG_DIRS
do
FILE_NAME=packages/$pkg/package.json
TMP_FILE=$(mktemp)
jq --arg versionNumber $VERSION '.version |= $versionNumber' $FILE_NAME > $TMP_FILE
mv $TMP_FILE $FILE_NAME
for PKG_NAME in $PKG_NAMES
do
jq --arg versionNumber $VERSION --arg PKG_NAME $PKG_NAME '
if .dependencies[$PKG_NAME]? then .dependencies[$PKG_NAME] |= $versionNumber
elif .devDependencies[$PKG_NAME]? then .devDependencies[$PKG_NAME] |= $versionNumber
else . end' $FILE_NAME > $TMP_FILE
mv $TMP_FILE $FILE_NAME
done
done