skolplattformen-backup/bitrise.yml

182 lines
4.4 KiB
YAML

---
format_version: '8'
default_step_lib_source: 'https://github.com/bitrise-io/bitrise-steplib.git'
project_type: react-native
trigger_map:
- push_branch: main
workflow: primary
- pull_request_source_branch: '*'
workflow: primary
workflows:
deploy:
description: >
## Configure Android part of the deploy workflow
To generate a signed APK:
1. Open the **Workflow** tab of your project on Bitrise.io
1. Add **Sign APK step right after Android Build step**
1. Click on **Code Signing** tab
1. Find the **ANDROID KEYSTORE FILE** section
1. Click or drop your file on the upload file field
1. Fill the displayed 3 input fields:
1. **Keystore password**
1. **Keystore alias**
1. **Private key password**
1. Click on **[Save metadata]** button
That's it! From now on, **Sign APK** step will receive your uploaded
files.
## Configure iOS part of the deploy workflow
To generate IPA:
1. Open the **Workflow** tab of your project on Bitrise.io
1. Click on **Code Signing** tab
1. Find the **PROVISIONING PROFILE** section
1. Click or drop your file on the upload file field
1. Find the **CODE SIGNING IDENTITY** section
1. Click or drop your file on the upload file field
1. Click on **Workflows** tab
1. Select deploy workflow
1. Select **Xcode Archive & Export for iOS** step
1. Open **Force Build Settings** input group
1. Specify codesign settings
Set **Force code signing with Development Team**, **Force code signing
with Code Signing Identity**
and **Force code signing with Provisioning Profile** inputs regarding to
the uploaded codesigning files
1. Specify manual codesign style
If the codesigning files, are generated manually on the Apple Developer
Portal,
you need to explicitly specify to use manual coedsign settings
(as ejected rn projects have xcode managed codesigning turned on).
To do so, add 'CODE_SIGN_STYLE="Manual"' to 'Additional options for
xcodebuild call' input
## To run this workflow
If you want to run this workflow manually:
1. Open the app's build list page
2. Click on **[Start/Schedule a Build]** button
3. Select **deploy** in **Workflow** dropdown input
4. Click **[Start Build]** button
Or if you need this workflow to be started by a GIT event:
1. Click on **Triggers** tab
2. Setup your desired event (push/tag/pull) and select **deploy** workflow
3. Click on **[Done]** and then **[Save]** buttons
The next change in your repository that matches any of your trigger map
event will start **deploy** workflow.
steps:
- activate-ssh-key@4:
run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
- git-clone@4: {}
- script@1:
title: Do anything with Script step
- yarn@0:
inputs:
- workdir: packages/app
- command: install
- install-missing-android-tools@2:
inputs:
- gradlew_path: $PROJECT_LOCATION/gradlew
- android-build@0:
inputs:
- project_location: $PROJECT_LOCATION
- certificate-and-profile-installer@1: {}
- recreate-user-schemes@1:
inputs:
- project_path: $BITRISE_PROJECT_PATH
- cocoapods-install@2: {}
- xcode-archive@3:
inputs:
- project_path: $BITRISE_PROJECT_PATH
- scheme: $BITRISE_SCHEME
- export_method: $BITRISE_EXPORT_METHOD
- configuration: Release
- deploy-to-bitrise-io@1: {}
primary:
steps:
- activate-ssh-key@4:
run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
- git-clone@4: {}
- script@1:
title: Do anything with Script step
- yarn@0:
inputs:
- workdir: packages/app
- command: install
- yarn@0:
inputs:
- workdir: packages/app
- command: test
- deploy-to-bitrise-io@1: {}
description: Build and deploy
app:
envs:
- opts:
is_expand: false
PROJECT_LOCATION: packages/app/android
- opts:
is_expand: false
MODULE: app
- opts:
is_expand: false
VARIANT: debug
- opts:
is_expand: false
BITRISE_PROJECT_PATH: packages/app/ios/app.xcworkspace
- opts:
is_expand: false
BITRISE_SCHEME: app
- opts:
is_expand: false
BITRISE_EXPORT_METHOD: ad-hoc