-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathbitrise.yml
117 lines (116 loc) · 3.36 KB
/
bitrise.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
---
format_version: '8'
default_step_lib_source: https://github.com/bitrise-io/bitrise-steplib.git
project_type: ios
app:
envs:
- FASTLANE_USER: [email protected]
- TEAM_ID: XXXXXXXXX
- BITRISE_PROJECT_PATH: Example Project.xcodeproj
- SLACK_CHANNEL: "#some-slack-channel"
trigger_map:
- push_branch: development
workflow: test
- push_branch: staging
workflow: staging
- push_branch: main
workflow: production
workflows:
development:
title: Create a new "Development" archive and upload to Testflight
envs:
- BITRISE_SCHEME: Example Project Development
- FASTLANE_LANE: development
- PILOT_APPLE_ID: '1234 SOME ID HERE'
after_run:
- _deploy_common
test:
title: Create a new "Test" archive and upload to Testflight
envs:
- BITRISE_SCHEME: Example Project Test
- FASTLANE_LANE: test
- PILOT_APPLE_ID: '1234 SOME ID HERE'
after_run:
- _deploy_common
staging:
title: Create a new "Staging" archive and upload to Testflight
envs:
- BITRISE_SCHEME: Example Project Staging
- FASTLANE_LANE: staging
- PILOT_APPLE_ID: '1234 SOME ID HERE'
after_run:
- _deploy_common
production:
title: Create a new "Production" archive and upload to Testflight
envs:
- BITRISE_SCHEME: Example Project Production
- FASTLANE_LANE: production
- PILOT_APPLE_ID: '1234 SOME ID HERE'
after_run:
- _deploy_common
_prepare:
steps:
- activate-ssh-key@4:
run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
- git-clone@6:
inputs:
- update_submodules: 'no'
- script@1:
inputs:
- content: |-
#!/usr/bin/env bash
set -ex
envman add --key CERT_KEYCHAIN_PASSWORD --value $BITRISE_KEYCHAIN_PASSWORD
title: Set environment variables
- cache-pull@2: {}
- script@1:
inputs:
- content: |-
#!/usr/bin/env bash
set -ex
bundle config set path 'vendor/bundle'
bundle install
curl -L -o /tmp/xcodegen.zip "https://github.com/yonaskolb/XcodeGen/releases/latest/download/xcodegen.zip" && unzip -q /tmp/xcodegen.zip -d /tmp && /tmp/xcodegen/install.sh
curl -sL https://sentry.io/get-cli/ | bash
title: Install tooling
- script@1:
inputs:
- content: bundle exec pod install
title: Install dependencies
- cache-push@2:
inputs:
- compress_archive: 'true'
- cache_paths: |-
$BITRISE_CACHE_DIR
./vendor -> ./Gemfile.lock
./Pods
./Rome
_deploy_common:
before_run:
- _prepare
steps:
- manage-ios-code-signing@2:
inputs:
- distribution_method: app-store
- apple_service_connection: apple-id
- apple_team_id: $TEAM_ID
- script@1:
inputs:
- content: bundle exec fastlane ios $FASTLANE_LANE
title: Fastlane
- slack@4:
inputs:
- channel_on_error: "$SLACK_CHANNEL"
- api_token: "$SLACK_BOT_TOKEN"
- fields: |
App|${BITRISE_APP_TITLE}
Tag|${BITRISE_GIT_TAG}
Branch|${BITRISE_GIT_BRANCH}
Workflow|${BITRISE_TRIGGERED_WORKFLOW_ID}
- deploy-to-bitrise-io@2:
inputs:
- is_enable_public_page: 'false'
meta:
bitrise.io:
stack: osx-xcode-16.0.x
machine_type_id: g2-m1.4core