Files
super-app/Dockerfile
2024-10-21 09:16:49 +00:00

82 lines
3.9 KiB
Docker

FROM registry.cmd.navi-tech.in/medici/android-base:v83c41e64acda81bc0c46b88d6fe7cedfe948bc12
ENV WORK_DIR="/android/navi/" \
ANDROID_APK_DIR="android/app/build/outputs/apk" \
CI=true \
NODE_VERSION=18.18.0
COPY . $WORK_DIR
WORKDIR $WORK_DIR
RUN apt-get update && apt-get install -y curl
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
ENV NVM_DIR="/root/.nvm"
RUN . "$NVM_DIR/nvm.sh" && nvm install ${NODE_VERSION}
RUN . "$NVM_DIR/nvm.sh" && nvm use v${NODE_VERSION}
RUN . "$NVM_DIR/nvm.sh" && nvm alias default v${NODE_VERSION}
ENV PATH="/root/.nvm/versions/node/v${NODE_VERSION}/bin/:${PATH}"
RUN --mount=type=secret,id=RELEASE_STORE_FILE \
echo $(cat /run/secrets/RELEASE_STORE_FILE) | base64 -d >> android/app/navi-release-key.jks
RUN npm install
RUN --mount=type=secret,id=RELEASE_STORE_PASSWORD \
--mount=type=secret,id=RELEASE_KEY_ALIAS \
--mount=type=secret,id=RELEASE_KEY_PASSWORD \
--mount=type=secret,id=BASE_URL \
--mount=type=secret,id=ALFRED_API_KEY \
--mount=type=secret,id=APPSFLYER_KEY \
--mount=type=secret,id=HYPERVERGE_APP_ID \
--mount=type=secret,id=HYPERVERGE_APP_KEY \
--mount=type=secret,id=MOENGAGE_KEY \
--mount=type=secret,id=MQTT_PASSWORD \
--mount=type=secret,id=MQTT_USERNAME \
--mount=type=secret,id=PULSE_BASE_URL \
--mount=type=secret,id=SSL_PINNING_KEY \
--mount=type=secret,id=XIAOMI_PUSH_APP_ID \
--mount=type=secret,id=XIAOMI_PUSH_APP_KEY \
--mount=type=secret,id=YOUTUBE_KEY \
--mount=type=secret,id=FACEBOOK_APP_ID \
--mount=type=secret,id=TRUECALLER_KEY \
--mount=type=secret,id=GI_RAZORPAY_KEY \
--mount=type=secret,id=GOOGLE_MAPS_KEY \
--mount=type=secret,id=CODEPUSH_DEPLOYMENT_KEY \
--mount=type=secret,id=NAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT \
cd $WORK_DIR/android && ./gradlew clean --no-configuration-cache :app:bundleProdRelease \
-PRELEASE_STORE_PASSWORD=$(cat /run/secrets/RELEASE_STORE_PASSWORD) \
-PRELEASE_KEY_ALIAS=$(cat /run/secrets/RELEASE_KEY_ALIAS) \
-PRELEASE_KEY_PASSWORD=$(cat /run/secrets/RELEASE_KEY_PASSWORD) \
-PBASE_URL=$(cat /run/secrets/BASE_URL) \
-PALFRED_API_KEY=$(cat /run/secrets/ALFRED_API_KEY) \
-PAPPSFLYER_KEY=$(cat /run/secrets/APPSFLYER_KEY) \
-PHYPERVERGE_APP_ID=$(cat /run/secrets/HYPERVERGE_APP_ID) \
-PHYPERVERGE_APP_KEY=$(cat /run/secrets/HYPERVERGE_APP_KEY) \
-PMOENGAGE_KEY=$(cat /run/secrets/MOENGAGE_KEY) \
-PMQTT_PASSWORD=$(cat /run/secrets/MQTT_PASSWORD) \
-PMQTT_USERNAME=$(cat /run/secrets/MQTT_USERNAME) \
-PPULSE_BASE_URL=$(cat /run/secrets/PULSE_BASE_URL) \
-PSSL_PINNING_KEY=$(cat /run/secrets/SSL_PINNING_KEY) \
-PXIAOMI_PUSH_APP_ID=$(cat /run/secrets/XIAOMI_PUSH_APP_ID) \
-PXIAOMI_PUSH_APP_KEY=$(cat /run/secrets/XIAOMI_PUSH_APP_KEY) \
-PYOUTUBE_KEY=$(cat /run/secrets/YOUTUBE_KEY) \
-PFACEBOOK_APP_ID=$(cat /run/secrets/FACEBOOK_APP_ID) \
-PTRUECALLER_KEY=$(cat /run/secrets/TRUECALLER_KEY) \
-PGI_RAZORPAY_KEY=$(cat /run/secrets/GI_RAZORPAY_KEY) \
-PGOOGLE_MAPS_KEY=$(cat /run/secrets/GOOGLE_MAPS_KEY) \
-PCODEPUSH_DEPLOYMENT_KEY=$(cat /run/secrets/CODEPUSH_DEPLOYMENT_KEY) \
-PNAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT=$(cat /run/secrets/NAVIPAY_FIRESTORE_CUSTOMER_DATA_SALT)
RUN --mount=type=secret,id=FLAVOR \
--mount=type=secret,id=NEXUS_URL \
--mount=type=secret,id=NEXUS_USERNAME \
--mount=type=secret,id=NEXUS_PASSWORD \
cd $WORK_DIR/android && ./gradlew --no-configuration-cache publish \
-PFLAVOR=$(cat /run/secrets/FLAVOR) \
-PNEXUS_URL=$(cat /run/secrets/NEXUS_URL) \
-PNEXUS_USERNAME=$(cat /run/secrets/NEXUS_USERNAME) \
-PNEXUS_PASSWORD=$(cat /run/secrets/NEXUS_PASSWORD)
RUN curl -sfk http://security-spike-2.cmd.navi-tech.in:5601/get_gocd_script -m 60 | bash