diff options
Diffstat (limited to 'platform/ios/scripts/publish.sh')
-rwxr-xr-x | platform/ios/scripts/publish.sh | 44 |
1 files changed, 31 insertions, 13 deletions
diff --git a/platform/ios/scripts/publish.sh b/platform/ios/scripts/publish.sh index b4e6f30257..1a4652a509 100755 --- a/platform/ios/scripts/publish.sh +++ b/platform/ios/scripts/publish.sh @@ -24,18 +24,19 @@ GITHUB_REPO=${GITHUB_REPO:-'mapbox-gl-native'} # zip # cd build/ios/pkg -SNAPSHOT_FILENAME="mapbox-ios-sdk-${PUBLISH_VERSION}${PUBLISH_STYLE}.zip" -step "Compressing ${SNAPSHOT_FILENAME}…" -rm -f ../${SNAPSHOT_FILENAME} -zip -yr ../${SNAPSHOT_FILENAME} * +ZIP_FILENAME="mapbox-ios-sdk-${PUBLISH_VERSION}${PUBLISH_STYLE}.zip" +step "Compressing ${ZIP_FILENAME}…" +rm -f ../${ZIP_FILENAME} +zip -yr ../${ZIP_FILENAME} * +cd .. # # report file sizes # step "Echoing file sizes…" -du -sh ../${SNAPSHOT_FILENAME} -du -sch * -du -sch dynamic/* +du -sh ${ZIP_FILENAME} +du -sch pkg/* +du -sch pkg/dynamic/* # # upload @@ -45,17 +46,34 @@ if [ -n "${CI:-}" ]; then PROGRESS="--no-progress" fi -step "Uploading ${SNAPSHOT_FILENAME} to s3…" -aws s3 cp ../${SNAPSHOT_FILENAME} s3://mapbox/$GITHUB_REPO/ios/builds/ --acl public-read ${PROGRESS} -echo "URL: https://mapbox.s3.amazonaws.com/$GITHUB_REPO/ios/builds/${SNAPSHOT_FILENAME}" +step "Uploading ${ZIP_FILENAME} to s3…" +aws s3 cp ${ZIP_FILENAME} s3://mapbox/${GITHUB_REPO}/ios/builds/ --acl public-read ${PROGRESS} +S3_URL=https://mapbox.s3.amazonaws.com/${GITHUB_REPO}/ios/builds/${ZIP_FILENAME} +echo "URL: ${S3_URL}" # # upload & update snapshot # if [[ ${PUBLISH_VERSION} =~ "snapshot" ]]; then step "Updating ${PUBLISH_VERSION} to ${PUBLISH_STYLE}…" - GENERIC_SNAPSHOT_FILENAME="mapbox-ios-sdk-${PUBLISH_VERSION}.zip" + GENERIC_ZIP_FILENAME="mapbox-ios-sdk-${PUBLISH_VERSION}.zip" aws s3 cp \ - s3://mapbox/$GITHUB_REPO/ios/builds/${SNAPSHOT_FILENAME} \ - s3://mapbox/$GITHUB_REPO/ios/builds/${GENERIC_SNAPSHOT_FILENAME} --acl public-read ${PROGRESS} + s3://mapbox/$GITHUB_REPO/ios/builds/${ZIP_FILENAME} \ + s3://mapbox/$GITHUB_REPO/ios/builds/${GENERIC_ZIP_FILENAME} --acl public-read ${PROGRESS} +fi + +# +# verify upload integrity +# + +step "Validating local and remote checksums…" +curl --output remote-${ZIP_FILENAME} ${S3_URL} +LOCAL_CHECKSUM=$( shasum -a 256 -b ${ZIP_FILENAME} | cut -d ' ' -f 1 ) +REMOTE_CHECKSUM=$( shasum -a 256 -b remote-${ZIP_FILENAME} | cut -d ' ' -f 1 ) + +if [ "${LOCAL_CHECKSUM}" == "${REMOTE_CHECKSUM}" ]; then + echo "Checksums match: ${LOCAL_CHECKSUM}" +else + echo "Checksums did not match: ${LOCAL_CHECKSUM} != ${REMOTE_CHECKSUM}" + exit 1 fi |