workflows: android: name: build, test & publish Android version max_build_duration: 30 instance_type: mac_mini_m1 working_directory: client/mobile environment: groups: - default cache: cache_paths: - $CM_BUILD_DIR/node_modules scripts: - name: Install npm dependencies script: | yarn - name: Set Android SDK location script: | echo "sdk.dir=$ANDROID_SDK_ROOT" > "./android/local.properties" - name: Build Android release working_directory: client/mobile/android script: | UPDATED_BUILD_NUMBER=$BUILD_NUMBER ./gradlew assembleRelease \ -PversionCode=$UPDATED_BUILD_NUMBER \ -PversionName=1.0.$UPDATED_BUILD_NUMBER - name: Build finished successfully script: touch ~/SUCCESS artifacts: - android/app/build/outputs/**/**/*.apk publishing: email: recipients: - moonrailgun@gmail.com scripts: - name: Notify artifact URL to Tailchat script: | node scripts/notify-links.js ios: name: build, test & publish iOS version instance_type: mac_mini_m1 working_directory: client/mobile environment: groups: - default cache: cache_paths: - $CM_BUILD_DIR/node_modules scripts: - name: Install npm dependencies script: | yarn - name: Build ipa for distribution working_directory: client/mobile/ios script: | xcode-project build-ipa \ --workspace "$CM_BUILD_DIR/client/mobile/ios/$XCODE_WORKSPACE" \ --scheme "$XCODE_SCHEME" artifacts: - build/ios/ipa/*.ipa publishing: email: recipients: - moonrailgun@gmail.com