diff --git a/.gitignore b/.gitignore index 19a562dacc2064d4631245eb67195a87b571d0d9..056b5c2ebb090f7f281f564c156a953e2c51b5a7 100644 --- a/.gitignore +++ b/.gitignore @@ -6,7 +6,7 @@ !/platforms/desktop !/platforms/android /resources/android/build/local.properties -/resources/android/build/Cesium.keystore +/resources/android/build/*.keystore /resources/android/build/release-signing.properties /plugins/ .idea/ @@ -14,17 +14,23 @@ .local/ .directory /*.iml +/npm-debug.log +/package-lock.json +/yarn-error.log + -/www/lib/ -/www/js/config.js -/www/dist /dist/web + /hooks/playstore-config.json /hooks/minify-conf.json /hooks/uglify-config.json /hooks/after_prepare/ionic-minify.js /hooks/after_prepare/uglify.js +/www/js/config.js +/www/dist +/www/lib + # Generated CSS /www/css/ionic.app.css /www/css/ionic.app.min.css @@ -38,8 +44,6 @@ /www/css/leaflet.app.min.css /www/img/layers*.png /www/img/marker*.png +/www/img/loader.gif /www/img/search-icon.png - -/npm-debug.log -/package-lock.json -/yarn-error.log +/www/img/search-icon-mobile.png diff --git a/github.sh b/github.sh deleted file mode 100755 index 527b839ecac5adb1263f0f69489978caa7c3fb01..0000000000000000000000000000000000000000 --- a/github.sh +++ /dev/null @@ -1,131 +0,0 @@ -#!/bin/bash - -### Control that the script is run on `dev` branch -branch=`git rev-parse --abbrev-ref HEAD` -if [[ ! "$branch" = "master" ]]; -then - echo ">> This script must be run under \`master\` branch" - exit 1 -fi - -### Get version to release -current=`grep -P "version\": \"\d+.\d+.\d+(\w*)" package.json | grep -m 1 -oP "\d+.\d+.\d+(\w*)"` -if [[ "_$current" == "_" ]]; then - echo "Unable to read the current version in 'package.json'. Please check version format is: x.y.z (x and y should be an integer)." - exit 1; -fi -echo "Current version: $current" - -### Get repo URL -PROJECT_NAME=cesium -REPO="duniter/cesium" -REPO_API_URL=https://api.github.com/repos/$REPO -REPO_PUBLIC_URL=https://github.com/$REPO - -### get auth token -GITHUB_TOKEN=`cat ~/.config/${PROJECT_NAME}/.github` -if [[ "_$GITHUB_TOKEN" != "_" ]]; then - GITHUT_AUTH="Authorization: token $GITHUB_TOKEN" -else - echo "ERROR: Unable to find github authentication token file: " - echo " - You can create such a token at https://github.com/settings/tokens > 'Generate a new token'." - echo " - Then copy the token and paste it in the file '~/.config/${PROJECT_NAME}/.github' using a valid token." - exit 1 -fi - -case "$1" in - del) - result=`curl -i "$REPO_API_URL/releases/tags/v$current"` - release_url=`echo "$result" | grep -P "\"url\": \"[^\"]+" | grep -oP "$REPO_API_URL/releases/\d+"` - if [[ $release_url != "" ]]; then - echo "Deleting existing release..." - curl -H 'Authorization: token $GITHUB_TOKEN' -XDELETE $release_url - fi - ;; - - pre|rel) - if [[ "_$2" != "_" ]]; then - - if [[ $1 = "pre" ]]; then - prerelease="true" - else - prerelease="false" - fi - - description=`echo $2` - if [[ "_$description" = "_" ]]; then - description="Release v$current" - fi - - result=`curl -s -H ''"$GITHUT_AUTH"'' "$REPO_API_URL/releases/tags/v$current"` - release_url=`echo "$result" | grep -P "\"url\": \"[^\"]+" | grep -oP "https://[A-Za-z0-9/.-]+/releases/\d+"` - if [[ "_$release_url" != "_" ]]; then - echo "Deleting existing release... $release_url" - result=`curl -H ''"$GITHUT_AUTH"'' -s -XDELETE $release_url` - if [[ "_$result" != "_" ]]; then - error_message=`echo "$result" | grep -P "\"message\": \"[^\"]+" | grep -oP ": \"[^\"]+\""` - echo "Delete existing release failed with error$error_message" - exit 1 - fi - else - echo "Release not exists yet on github." - fi - - echo "Creating new release..." - echo " - tag: v$current" - echo " - description: $description" - result=`curl -H ''"$GITHUT_AUTH"'' -s $REPO_API_URL/releases -d '{"tag_name": "v'"$current"'","target_commitish": "master","name": "'"$current"'","body": "'"$description"'","draft": false,"prerelease": '"$prerelease"'}'` - #echo "DEBUG - $result" - upload_url=`echo "$result" | grep -P "\"upload_url\": \"[^\"]+" | grep -oP "https://[A-Za-z0-9/.-]+"` - - if [[ "_$upload_url" = "_" ]]; then - echo "Failed to create new release for repo $REPO." - echo "Server response:" - echo "$result" - exit 1 - fi - - ### Sending files - echo "Uploading files to ${upload_url} ..." - dirname=$(pwd) - - ZIP_FILE="$dirname/dist/web/build/${PROJECT_NAME}-v$current-web.zip" - if [[ -f "${ZIP_FILE}" ]]; then - result=$(curl -s -H ''"$GITHUT_AUTH"'' -H 'Content-Type: application/zip' -T "${ZIP_FILE}" "${upload_url}?name=${PROJECT_NAME}-v${current}-web.zip") - browser_download_url=$(echo "$result" | grep -P "\"browser_download_url\":[ ]?\"[^\"]+" | grep -oP "\"browser_download_url\":[ ]?\"[^\"]+" | grep -oP "https://[A-Za-z0-9/.-]+") - ZIP_SHA256=$(sha256sum "${ZIP_FILE}") - echo " - ${browser_download_url} | SHA256 Checksum: ${ZIP_SHA256}" - else - echo " - ERROR: Web release (ZIP) not found! Skipping." - fi - - APK_FILE="${dirname}/platforms/android/build/outputs/apk/release/android-release.apk" - if [[ -f "${APK_FILE}" ]]; then - result=$(curl -s -H ''"$GITHUT_AUTH"'' -H 'Content-Type: application/vnd.android.package-archive' -T "${APK_FILE}" "${upload_url}?name=${PROJECT_NAME}-v${current}-android.apk") - browser_download_url=$(echo "$result" | grep -P "\"browser_download_url\":[ ]?\"[^\"]+" | grep -oP "\"browser_download_url\":[ ]?\"[^\"]+" | grep -oP "https://[A-Za-z0-9/.-]+") - APK_SHA256=$(sha256sum "${APK_FILE}") - echo " - ${browser_download_url} | SHA256 Checksum: ${APK_SHA256}" - else - echo "- ERROR: Android release (APK) not found! Skipping." - fi - - echo "-----------------------------------------" - echo "Successfully uploading files !" - echo " -> Release url: ${REPO_PUBLIC_URL}/releases/tag/v${current}" - exit 0 - else - echo "Wrong arguments" - echo "Usage:" - echo " > ./github.sh del|pre|rel <release_description>" - echo "With:" - echo " - del: delete existing release" - echo " - pre: use for pre-release" - echo " - rel: for full release" - exit 1 - fi - ;; - *) - echo "No task given" - exit 1 - ;; -esac diff --git a/scripts/env-global.sh b/scripts/env-global.sh index 4acb1a6ea325d8ed5120bb23bf6321199f43d697..0a2891ca9dc262744aa513b5c3194da96c4a0307 100755 --- a/scripts/env-global.sh +++ b/scripts/env-global.sh @@ -21,10 +21,12 @@ ANDROID_SDK_VERSION=r29.0.0 ANDROID_SDK_TOOLS_VERSION=4333796 ANDROID_SDK_ROOT=/usr/lib/android-sdk ANDROID_SDK_TOOLS_ROOT=${ANDROID_SDK_ROOT}/build-tools -ANDROID_OUTPUT_APK=platforms/android/build/outputs/apk +ANDROID_OUTPUT_APK=${PROJECT_DIR}/platforms/android/build/outputs/apk ANDROID_OUTPUT_APK_DEBUG=${ANDROID_OUTPUT_APK}/debug ANDROID_OUTPUT_APK_RELEASE=${ANDROID_OUTPUT_APK}/release +WEB_OUTPUT=${PROJECT_DIR}/dist/web/build + #JAVA_HOME= GRADLE_VERSION=4.10.3 diff --git a/scripts/github.sh b/scripts/github.sh index 415dcb796f51e4e3437199566ab2dda8f7e83a11..ebc8ad25888003868e53a00d98ccb8a6e35c0c09 100755 --- a/scripts/github.sh +++ b/scripts/github.sh @@ -7,7 +7,9 @@ if [[ "_" == "_${PROJECT_DIR}" ]]; then export PROJECT_DIR fi; +# Preparing Android environment cd ${PROJECT_DIR} +. ${PROJECT_DIR}/scripts/env-global.sh ### Control that the script is run on `dev` branch branch=$(git rev-parse --abbrev-ref HEAD) @@ -31,6 +33,7 @@ REPO="duniter/cesium" REPO_API_URL="https://api.github.com/repos/${REPO}" REPO_PUBLIC_URL="https://github.com/${REPO}" + ### get auth token GITHUB_TOKEN=$(cat ~/.config/${PROJECT_NAME}/.github) if [[ "_$GITHUB_TOKEN" != "_" ]]; then @@ -98,22 +101,25 @@ case "$1" in echo "Uploading files to ${upload_url} ..." dirname=$(pwd) - ZIP_FILE="$dirname/dist/web/build/${PROJECT_NAME}-v$current-web.zip" + ZIP_FILE="${WEB_OUTPUT}/${PROJECT_NAME}-v$current-web.zip" if [[ -f "${ZIP_FILE}" ]]; then result=$(curl -s -H ''"$GITHUT_AUTH"'' -H 'Content-Type: application/zip' -T "${ZIP_FILE}" "${upload_url}?name=${PROJECT_NAME}-v${current}-web.zip") browser_download_url=$(echo "$result" | grep -P "\"browser_download_url\":[ ]?\"[^\"]+" | grep -oP "\"browser_download_url\":[ ]?\"[^\"]+" | grep -oP "https://[A-Za-z0-9/.-]+") ZIP_SHA256=$(sha256sum "${ZIP_FILE}") - echo " - ${browser_download_url} | SHA256 Checksum: ${ZIP_SHA256}" + echo " - ${browser_download_url} | Checksum: ${ZIP_SHA256}" else echo " - ERROR: Web release (ZIP) not found! Skipping." fi - APK_FILE="${dirname}/platforms/android/build/outputs/apk/release/android-release.apk" + APK_FILE="${ANDROID_OUTPUT_APK_RELEASE}/android-release.apk" if [[ -f "${APK_FILE}" ]]; then - result=$(curl -s -H ''"$GITHUT_AUTH"'' -H 'Content-Type: application/vnd.android.package-archive' -T "${APK_FILE}" "${upload_url}?name=${PROJECT_NAME}-v${current}-android.apk") + mkdir -p ${PROJECT_DIR}/dist/android + cp ${APK_FILE} ${PROJECT_DIR}/dist/android/${PROJECT_NAME}-v${current}-android.apk + APK_FILE="${PROJECT_DIR}/dist/android/${PROJECT_NAME}-v${current}-android.apk" + result=$(curl -s -H ''"$GITHUT_AUTH"'' -H 'Content-Type: application/vnd.android.package-archive' -T "${APK_FILE}" "${upload_url}") browser_download_url=$(echo "$result" | grep -P "\"browser_download_url\":[ ]?\"[^\"]+" | grep -oP "\"browser_download_url\":[ ]?\"[^\"]+" | grep -oP "https://[A-Za-z0-9/.-]+") APK_SHA256=$(sha256sum "${APK_FILE}") - echo " - ${browser_download_url} | SHA256 Checksum: ${APK_SHA256}" + echo " - ${browser_download_url} | Checksum: ${APK_SHA256}" else echo "- ERROR: Android release (APK) not found! Skipping." fi diff --git a/scripts/release.sh b/scripts/release.sh index a90ebd8ae0b03af7f06e302c2eeda05840928f47..efc1d5e1211dd3e0c5ca39fa01c36f6429848dfd 100755 --- a/scripts/release.sh +++ b/scripts/release.sh @@ -9,7 +9,6 @@ fi; cd ${PROJECT_DIR} - ### Control that the script is run on `dev` branch branch=$(git rev-parse --abbrev-ref HEAD) if [[ ! "$branch" == "master" ]]; @@ -78,20 +77,15 @@ if [[ $? -ne 0 ]]; then exit 1 fi - echo "----------------------------------" echo "- Compiling sources..." echo "----------------------------------" -# Update config file -gulp config --env default_fr # Compile -gulp build +gulp config build --env default_fr echo "----------------------------------" echo "- Building Android artifact..." echo "----------------------------------" - - . scripts/build-android.sh --release if [[ $? -ne 0 ]]; then exit 1 @@ -101,10 +95,7 @@ fi echo "----------------------------------" echo "- Building web artifact..." echo "----------------------------------" - -# Update config file -gulp config --env default -gulp webBuild --release +gulp config webBuild --env default --release if [[ $? -ne 0 ]]; then exit 1 fi @@ -120,7 +111,7 @@ git add package.json config.xml install.sh www/js/config.js www/manifest.json if [[ $? -ne 0 ]]; then exit 1 fi -git commit -m "v$2" && git tag "v$2" && git push +git commit -m "v$2" && git tag -f "v$2" && git push if [[ $? -ne 0 ]]; then exit 1 fi