forked from TelegramMessenger/Telegram-iOS
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdeploy-appcenter.sh
More file actions
83 lines (66 loc) · 2.91 KB
/
Copy pathdeploy-appcenter.sh
File metadata and controls
83 lines (66 loc) · 2.91 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
#!/bin/bash
set -e
set -x
API_HOST="https://api.appcenter.ms"
IPA_PATH="build/artifacts/Telegram.ipa"
DSYM_PATH="build/artifacts/Telegram.DSYMs.zip"
upload_ipa() {
GROUP_DATA=$(curl \
-X GET \
--header "X-API-Token: $API_TOKEN" \
"$API_HOST/v0.1/apps/$API_USER_NAME/$API_APP_NAME/distribution_groups/Internal" \
)
GROUP_ID=$(echo "$GROUP_DATA" | python -c 'import json,sys; obj=json.load(sys.stdin); print obj["id"];')
UPLOAD_TOKEN=$(curl \
-X POST \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "X-API-Token: $API_TOKEN" \
"$API_HOST/v0.1/apps/$API_USER_NAME/$API_APP_NAME/release_uploads" \
)
UPLOAD_URL=$(echo "$UPLOAD_TOKEN" | python -c 'import json,sys; obj=json.load(sys.stdin); print obj["upload_url"];')
UPLOAD_ID=$(echo "$UPLOAD_TOKEN" | python -c 'import json,sys; obj=json.load(sys.stdin); print obj["upload_id"];')
curl --progress-bar -F "ipa=@${IPA_PATH}" "$UPLOAD_URL"
RELEASE_TOKEN=$(curl \
-X PATCH \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "X-API-Token: $API_TOKEN" \
-d '{ "status": "committed" }' \
"$API_HOST/v0.1/apps/$API_USER_NAME/$API_APP_NAME/release_uploads/$UPLOAD_ID" \
)
RELEASE_URL=$(echo "$RELEASE_TOKEN" | python -c 'import json,sys; obj=json.load(sys.stdin); print obj["release_url"];')
RELEASE_ID=$(echo "$RELEASE_TOKEN" | python -c 'import json,sys; obj=json.load(sys.stdin); print obj["release_id"];')
curl \
-X POST \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "X-API-Token: $API_TOKEN" \
-d "{ \"id\": \"$GROUP_ID\", \"mandatory_update\": false, \"notify_testers\": false }" \
"$API_HOST/$RELEASE_URL/groups"
}
upload_dsym() {
UPLOAD_DSYM_DATA=$(curl \
-X POST \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "X-API-Token: $API_TOKEN" \
-d "{ \"symbol_type\": \"Apple\"}" \
"$API_HOST/v0.1/apps/$API_USER_NAME/$API_APP_NAME/symbol_uploads" \
)
DSYM_UPLOAD_URL=$(echo "$UPLOAD_DSYM_DATA" | python -c 'import json,sys; obj=json.load(sys.stdin); print obj["upload_url"];')
DSYM_UPLOAD_ID=$(echo "$UPLOAD_DSYM_DATA" | python -c 'import json,sys; obj=json.load(sys.stdin); print obj["symbol_upload_id"];')
curl \
--progress-bar \
--header "x-ms-blob-type: BlockBlob" \
--upload-file "${DSYM_PATH}" \
"$DSYM_UPLOAD_URL"
curl \
-X PATCH \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "X-API-Token: $API_TOKEN" \
-d '{ "status": "committed" }' \
"$API_HOST/v0.1/apps/$API_USER_NAME/$API_APP_NAME/symbol_uploads/$DSYM_UPLOAD_ID"
}
upload_ipa