workflows: capacitor-app-workflow: name: Capacitor iOS and Android Build max_build_duration: 60 environment: node: latest vars: XCODE_WORKSPACE: "ios/App/App.xcworkspace" XCODE_SCHEME: "App" PACKAGE_NAME: "io.coinos" groups: - appstore_credentials # Add your credentials in Codemagic settings scripts: - name: Install npm dependencies script: | npm install - name: Build Web Assets and Sync Capacitor script: | npm run build npx cap sync ios npx cap sync android artifacts: - ios/App/build/ios/ipa/*.ipa - android/app/build/outputs/**/*.apk - android/app/build/outputs/**/*.aab publishing: app_store_connect: auth: $APP_STORE_CONNECT_API_KEY submit_to_testflight: true google_play: credentials: $GCLOUD_SERVICE_ACCOUNT_CREDENTIALS track: internal workflows: ios: name: iOS Build scripts: - name: Install CocoaPods script: | cd ios/App pod install - name: Build IPA script: | xcode-project build-ipa \ --workspace "$XCODE_WORKSPACE" \ --scheme "$XCODE_SCHEME" \ --export-method app-store android: name: Android Build scripts: - name: Set up Android keystore script: | echo "$CM_KEYSTORE" | base64 --decode > android/app/keystore.jks - name: Build Android App Bundle (AAB) script: | cd android ./gradlew bundleRelease