1#!/usr/bin/env bash 2# DO NOT ADD 'set -x' not to reveal CircleCI secret context environment variables 3set -eu -o pipefail 4 5export ANDROID_NDK_HOME=/opt/ndk 6export ANDROID_HOME=/opt/android/sdk 7 8export GRADLE_VERSION=6.8.3 9export GRADLE_HOME=/opt/gradle/gradle-$GRADLE_VERSION 10export GRADLE_PATH=$GRADLE_HOME/bin/gradle 11 12echo "BUILD_ENVIRONMENT:$BUILD_ENVIRONMENT" 13ls -la ~/workspace 14 15GRADLE_PROPERTIES=~/workspace/android/gradle.properties 16 17IS_SNAPSHOT="$(grep 'VERSION_NAME=[0-9\.]\+-SNAPSHOT' "$GRADLE_PROPERTIES")" 18echo "IS_SNAPSHOT:$IS_SNAPSHOT" 19 20if [ -z "$IS_SNAPSHOT" ]; then 21 echo "Error: version is not snapshot." 22elif [ -z "$SONATYPE_NEXUS_USERNAME" ]; then 23 echo "Error: missing env variable SONATYPE_NEXUS_USERNAME." 24elif [ -z "$SONATYPE_NEXUS_PASSWORD" ]; then 25 echo "Error: missing env variable SONATYPE_NEXUS_PASSWORD." 26elif [ -z "$ANDROID_SIGN_KEY" ]; then 27 echo "Error: missing env variable ANDROID_SIGN_KEY." 28elif [ -z "$ANDROID_SIGN_PASS" ]; then 29 echo "Error: missing env variable ANDROID_SIGN_PASS." 30else 31 GRADLE_LOCAL_PROPERTIES=~/workspace/android/local.properties 32 rm -f $GRADLE_LOCAL_PROPERTIES 33 34 echo "sdk.dir=/opt/android/sdk" >> $GRADLE_LOCAL_PROPERTIES 35 echo "ndk.dir=/opt/ndk" >> $GRADLE_LOCAL_PROPERTIES 36 37 echo "SONATYPE_NEXUS_USERNAME=${SONATYPE_NEXUS_USERNAME}" >> $GRADLE_PROPERTIES 38 echo "mavenCentralRepositoryUsername=${SONATYPE_NEXUS_USERNAME}" >> $GRADLE_PROPERTIES 39 echo "SONATYPE_NEXUS_PASSWORD=${SONATYPE_NEXUS_PASSWORD}" >> $GRADLE_PROPERTIES 40 echo "mavenCentralRepositoryPassword=${SONATYPE_NEXUS_PASSWORD}" >> $GRADLE_PROPERTIES 41 42 echo "signing.keyId=${ANDROID_SIGN_KEY}" >> $GRADLE_PROPERTIES 43 echo "signing.password=${ANDROID_SIGN_PASS}" >> $GRADLE_PROPERTIES 44 45 $GRADLE_PATH -p ~/workspace/android/ uploadArchives 46fi 47