6db5b6da20
Build & Push Docker Images / test-backend (push) Successful in 22s
Build & Push Docker Images / test-frontend (push) Successful in 23s
Build & Push Docker Images / build-backend (push) Successful in 18s
Build & Push Docker Images / build-frontend (push) Successful in 30s
203 lines
5.5 KiB
YAML
203 lines
5.5 KiB
YAML
---
|
|
format_version: "11"
|
|
default_step_lib_source: https://github.com/bitrise-io/bitrise-steplib.git
|
|
|
|
project_type: capacitor
|
|
|
|
app:
|
|
envs:
|
|
- BITRISE_PROJECT_PATH: ""
|
|
- BITRISE_SCHEME: ""
|
|
|
|
trigger_map:
|
|
- push_branch: main
|
|
workflow: deploy
|
|
- pull_request_source_branch: "*"
|
|
workflow: test
|
|
- tag: "ios-v*"
|
|
workflow: deploy_ios
|
|
- tag: "android-v*"
|
|
workflow: deploy_android
|
|
|
|
workflows:
|
|
_setup:
|
|
steps:
|
|
- activate-ssh-key@5:
|
|
run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
|
|
- git-clone@9: {}
|
|
- setup-node@1:
|
|
inputs:
|
|
- node_version: "20"
|
|
- script@1:
|
|
title: Install dependencies & build frontend
|
|
inputs:
|
|
- content: |
|
|
#!/bin/bash
|
|
set -ex
|
|
npm ci
|
|
npm ci --prefix frontend
|
|
npm run build --prefix frontend
|
|
|
|
test:
|
|
before_run:
|
|
- _setup
|
|
steps:
|
|
- script@1:
|
|
title: Sync Android native project
|
|
inputs:
|
|
- content: |
|
|
#!/bin/bash
|
|
set -ex
|
|
npx cap sync android
|
|
- script@1:
|
|
title: Install Android SDK components
|
|
inputs:
|
|
- content: |
|
|
#!/bin/bash
|
|
set -ex
|
|
yes | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager \
|
|
"platforms;android-36" \
|
|
"build-tools;36.0.0" \
|
|
"platform-tools" || true
|
|
- android-build@2:
|
|
title: Build Android APK (debug)
|
|
inputs:
|
|
- project_location: android
|
|
- module: app
|
|
- variant: debug
|
|
|
|
test_ios:
|
|
before_run:
|
|
- _setup
|
|
steps:
|
|
- script@1:
|
|
title: Sync iOS native project
|
|
inputs:
|
|
- content: |
|
|
#!/bin/bash
|
|
set -ex
|
|
npx cap sync ios
|
|
- cocoapods-install@2:
|
|
inputs:
|
|
- podfile_path: ios/App/Podfile
|
|
- xcode-archive@5:
|
|
title: Build iOS (simulator)
|
|
inputs:
|
|
- project_path: ios/App/App.xcodeproj
|
|
- scheme: App
|
|
- configuration: Debug
|
|
- destination: generic/platform=iOS Simulator
|
|
- output_tool: xcodebuild
|
|
- cache_level: swift
|
|
|
|
deploy_ios:
|
|
before_run:
|
|
- _setup
|
|
steps:
|
|
- script@1:
|
|
title: Sync iOS native project
|
|
inputs:
|
|
- content: |
|
|
#!/bin/bash
|
|
set -ex
|
|
npx cap sync ios
|
|
- cocoapods-install@2:
|
|
inputs:
|
|
- podfile_path: ios/App/Podfile
|
|
- certificate-and-profile-installer@1: {}
|
|
- xcode-archive@5:
|
|
title: Archive iOS (release)
|
|
inputs:
|
|
- project_path: ios/App/App.xcodeproj
|
|
- scheme: App
|
|
- configuration: Release
|
|
- destination: generic/platform=iOS
|
|
- output_tool: xcodebuild
|
|
- export_method: app-store
|
|
- cache_level: swift
|
|
- deploy-to-bitrise-io@4: {}
|
|
|
|
deploy_android:
|
|
before_run:
|
|
- _setup
|
|
steps:
|
|
- script@1:
|
|
title: Sync Android native project
|
|
inputs:
|
|
- content: |
|
|
#!/bin/bash
|
|
set -ex
|
|
npx cap sync android
|
|
- script@1:
|
|
title: Install Android SDK components
|
|
inputs:
|
|
- content: |
|
|
#!/bin/bash
|
|
set -ex
|
|
yes | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager \
|
|
"platforms;android-36" \
|
|
"build-tools;36.0.0" \
|
|
"platform-tools" || true
|
|
- android-build@2:
|
|
title: Build Android AAB (release)
|
|
inputs:
|
|
- project_location: android
|
|
- module: app
|
|
- variant: release
|
|
- sign-apk@1:
|
|
inputs:
|
|
- use_apk_signer: "true"
|
|
- deploy-to-bitrise-io@4: {}
|
|
|
|
deploy:
|
|
before_run:
|
|
- _setup
|
|
steps:
|
|
- script@1:
|
|
title: Sync Android native project
|
|
inputs:
|
|
- content: |
|
|
#!/bin/bash
|
|
set -ex
|
|
npx cap sync android
|
|
- script@1:
|
|
title: Install Android SDK components
|
|
inputs:
|
|
- content: |
|
|
#!/bin/bash
|
|
set -ex
|
|
yes | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager \
|
|
"platforms;android-36" \
|
|
"build-tools;36.0.0" \
|
|
"platform-tools" || true
|
|
- android-build@2:
|
|
title: Build Android AAB (release)
|
|
inputs:
|
|
- project_location: android
|
|
- module: app
|
|
- variant: release
|
|
- sign-apk@1:
|
|
inputs:
|
|
- use_apk_signer: "true"
|
|
- script@1:
|
|
title: Sync iOS native project
|
|
inputs:
|
|
- content: |
|
|
#!/bin/bash
|
|
set -ex
|
|
npx cap sync ios
|
|
- cocoapods-install@2:
|
|
inputs:
|
|
- podfile_path: ios/App/Podfile
|
|
- certificate-and-profile-installer@1: {}
|
|
- xcode-archive@5:
|
|
title: Archive iOS (release)
|
|
inputs:
|
|
- project_path: ios/App/App.xcodeproj
|
|
- scheme: App
|
|
- configuration: Release
|
|
- destination: generic/platform=iOS
|
|
- output_tool: xcodebuild
|
|
- export_method: app-store
|
|
- cache_level: swift
|
|
- deploy-to-bitrise-io@4: {} |