-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdeploy.sh
More file actions
executable file
·96 lines (85 loc) · 6.86 KB
/
deploy.sh
File metadata and controls
executable file
·96 lines (85 loc) · 6.86 KB
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
#!/usr/bin/env bash
configure_aws_cli(){
aws --version
aws configure set default.region us-west-2
aws configure set default.output json
}
deploy() {
if [ ! -z "$CIRCLE_TAG" ]; then
VERSION=$CIRCLE_TAG
echo "Current tag is $CIRCLE_TAG"
# Uploading to folder by tag for user-app
aws s3 cp build/${VERSION}/. s3://iotit/${VERSION}/macos/ --recursive --exclude "*" --include "iotit_${VERSION}_darwin_*" --exclude "*/*"
aws s3 cp build/${VERSION}/. s3://iotit/${VERSION}/linux/ --recursive --exclude "*" --include "iotit_${VERSION}_linux_*" --exclude "*/*"
aws s3 cp build/${VERSION}/. s3://iotit/${VERSION}/windows/ --recursive --exclude "*" --include "iotit_${VERSION}_windows_*" --exclude "*/*"
curl http://iotit.s3-website-us-west-2.amazonaws.com/version.json | jq \
--arg md5_linux_x86 "$(md5sum build/${VERSION}/iotit_${VERSION}_linux_386.tar.gz | cut -d ' ' -f1)" \
--arg md5_linux_amd64 "$(md5sum build/${VERSION}/iotit_${VERSION}_linux_amd64.tar.gz | cut -d ' ' -f1)" \
--arg md5_linux_arm "$(md5sum build/${VERSION}/iotit_${VERSION}_linux_arm.tar.gz | cut -d ' ' -f1)" \
--arg md5_darwin_x86 "$(md5sum build/${VERSION}/iotit_${VERSION}_darwin_386.zip | cut -d ' ' -f1)" \
--arg md5_darwin_amd64 "$(md5sum build/${VERSION}/iotit_${VERSION}_darwin_amd64.zip | cut -d ' ' -f1)" \
--arg md5_windows_x86 "$(md5sum build/${VERSION}/iotit_${VERSION}_windows_386.zip | cut -d ' ' -f1)" \
--arg md5_windows_amd64 "$(md5sum build/${VERSION}/iotit_${VERSION}_windows_amd64.zip | cut -d ' ' -f1)" \
--arg sha1_linux_x86 "$(sha1sum build/${VERSION}/iotit_${VERSION}_linux_386.tar.gz | cut -d ' ' -f1)" \
--arg sha1_linux_amd64 "$(sha1sum build/${VERSION}/iotit_${VERSION}_linux_amd64.tar.gz | cut -d ' ' -f1)" \
--arg sha1_linux_arm "$(sha1sum build/${VERSION}/iotit_${VERSION}_linux_arm.tar.gz | cut -d ' ' -f1)" \
--arg sha1_darwin_x86 "$(sha1sum build/${VERSION}/iotit_${VERSION}_darwin_386.zip | cut -d ' ' -f1)" \
--arg sha1_darwin_amd64 "$(sha1sum build/${VERSION}/iotit_${VERSION}_darwin_amd64.zip | cut -d ' ' -f1)" \
--arg sha1_windows_x86 "$(sha1sum build/${VERSION}/iotit_${VERSION}_windows_386.zip | cut -d ' ' -f1)" \
--arg sha1_windows_amd64 "$(sha1sum build/${VERSION}/iotit_${VERSION}_windows_amd64.zip | cut -d ' ' -f1)" \
--arg version_stable "$VERSION" \
'.stable.md5sums.linux.x86 = $md5_linux_x86 | .stable.md5sums.linux.amd64 = $md5_linux_amd64 | .stable.md5sums.linux.arm = $md5_linux_arm |
.stable.md5sums.darwin.x86 = $md5_darwin_x86 | .stable.md5sums.darwin.amd64 = $md5_darwin_amd64 |
.stable.md5sums.windows.x86 = $md5_windows_x86 | .stable.md5sums.windows.amd64 = $md5_windows_amd64 |
.stable.sha1sums.linux.x86 = $sha1_linux_x86 | .stable.sha1sums.linux.amd64 = $sha1_linux_amd64 | .stable.sha1sums.linux.arm = $sha1_linux_arm |
.stable.sha1sums.darwin.x86 = $sha1_darwin_x86 | .stable.sha1sums.darwin.amd64 = $sha1_darwin_amd64 |
.stable.sha1sums.windows.x86 = $sha1_windows_x86 | .stable.sha1sums.windows.amd64 = $sha1_windows_amd64 |
.stable.version = $version_stable' \
> version.json
aws s3 cp version.json s3://iotit/version.json
# Cleanup build files
rm -rf build/$VERSION/.goxc-temp
rm -rf build/$VERSION/downloads.md
rm -rf build/$VERSION/LICENSE
rm -rf build/$VERSION/iotit_$VERSION_*deb
# Create release on GH
ghr -t $GITHUB_TOKEN -u $CIRCLE_PROJECT_USERNAME -r $CIRCLE_PROJECT_REPONAME --replace $VERSION build/${VERSION}/
elif [ "$CIRCLE_BRANCH" == "develop" ]; then
VERSION=$(git describe --tags)
echo "Current version is $VERSION"
# Uploading to latest folder for old versios support
aws s3 rm s3://iotit/latest --recursive
aws s3 cp build/${VERSION}/. s3://iotit/latest/macos/ --recursive --exclude "*" --include "iotit_${VERSION}_darwin_*" --exclude "*/*"
aws s3 cp build/${VERSION}/. s3://iotit/latest/linux/ --recursive --exclude "*" --include "iotit_${VERSION}_linux_*" --exclude "*/*"
aws s3 cp build/${VERSION}/. s3://iotit/latest/windows/ --recursive --exclude "*" --include "iotit_${VERSION}_windows_*" --exclude "*/*"
curl http://iotit.s3-website-us-west-2.amazonaws.com/version.json | jq \
--arg md5_linux_x86 "$(md5sum build/${VERSION}/iotit_${VERSION}_linux_386.tar.gz | cut -d ' ' -f1)" \
--arg md5_linux_amd64 "$(md5sum build/${VERSION}/iotit_${VERSION}_linux_amd64.tar.gz | cut -d ' ' -f1)" \
--arg md5_linux_arm "$(md5sum build/${VERSION}/iotit_${VERSION}_linux_arm.tar.gz | cut -d ' ' -f1)" \
--arg md5_darwin_x86 "$(md5sum build/${VERSION}/iotit_${VERSION}_darwin_386.zip | cut -d ' ' -f1)" \
--arg md5_darwin_amd64 "$(md5sum build/${VERSION}/iotit_${VERSION}_darwin_amd64.zip | cut -d ' ' -f1)" \
--arg md5_windows_x86 "$(md5sum build/${VERSION}/iotit_${VERSION}_windows_386.zip | cut -d ' ' -f1)" \
--arg md5_windows_amd64 "$(md5sum build/${VERSION}/iotit_${VERSION}_windows_amd64.zip | cut -d ' ' -f1)" \
--arg sha1_linux_x86 "$(sha1sum build/${VERSION}/iotit_${VERSION}_linux_386.tar.gz | cut -d ' ' -f1)" \
--arg sha1_linux_amd64 "$(sha1sum build/${VERSION}/iotit_${VERSION}_linux_amd64.tar.gz | cut -d ' ' -f1)" \
--arg sha1_linux_arm "$(sha1sum build/${VERSION}/iotit_${VERSION}_linux_arm.tar.gz | cut -d ' ' -f1)" \
--arg sha1_darwin_x86 "$(sha1sum build/${VERSION}/iotit_${VERSION}_darwin_386.zip | cut -d ' ' -f1)" \
--arg sha1_darwin_amd64 "$(sha1sum build/${VERSION}/iotit_${VERSION}_darwin_amd64.zip | cut -d ' ' -f1)" \
--arg sha1_windows_x86 "$(sha1sum build/${VERSION}/iotit_${VERSION}_windows_386.zip | cut -d ' ' -f1)" \
--arg sha1_windows_amd64 "$(sha1sum build/${VERSION}/iotit_${VERSION}_windows_amd64.zip | cut -d ' ' -f1)" \
--arg version_latest "$VERSION" \
'.latest.md5sums.linux.x86 = $md5_linux_x86 | .latest.md5sums.linux.amd64 = $md5_linux_amd64 | .latest.md5sums.linux.arm = $md5_linux_arm |
.latest.md5sums.darwin.x86 = $md5_darwin_x86 | .latest.md5sums.darwin.amd64 = $md5_darwin_amd64 |
.latest.md5sums.windows.x86 = $md5_windows_x86 | .latest.md5sums.windows.amd64 = $md5_windows_amd64 |
.latest.sha1sums.linux.x86 = $sha1_linux_x86 | .latest.sha1sums.linux.amd64 = $sha1_linux_amd64 | .latest.sha1sums.linux.arm = $sha1_linux_arm |
.latest.sha1sums.darwin.x86 = $sha1_darwin_x86 | .latest.sha1sums.darwin.amd64 = $sha1_darwin_amd64 |
.latest.sha1sums.windows.x86 = $sha1_windows_x86 | .latest.sha1sums.windows.amd64 = $sha1_windows_amd64 |
.latest.version = $version_latest' \
> version.json
aws s3 cp version.json s3://iotit/version.json
else
echo 'Release was not tagged, artifact upload cancelled'
fi
}
configure_aws_cli
deploy