-
Notifications
You must be signed in to change notification settings - Fork 8
/
step.yml
102 lines (80 loc) · 4.26 KB
/
step.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
title: "Expo Eject"
summary: Creates Xcode and Android Studio projects for your app.
description: |-
Expo is a toolchain that allows you to quickly get a React Native app up and running without having to use native code in Xcode or Android Studio. The Expo Eject Step is necessary to eject your app to install any missing native dependencies. Installing the native dependencies is done by our dedicated Steps, such as **Install missing Android SDK components** and **Run CocoaPods install**.
### Configuring the Step
1. Add the Step to your Workflow after the Step or Steps that install your app's Javascript dependencies (such as **Run npm command** or **Run yarn command**).
1. Set the **Working directory input field** to the value of your project directory. By default, you do not have to change this.
1. Provide your Expo username and password if you are using an Expo module that requires logging in before ejecting your app. Please refer to the [Expo documentation](https://docs.expo.io/) for more information.
1. Specify the Expo CLI version.
The default value is `latest` but you can specify an exact version, such as 3.0.0.
### Troubleshooting
Make sure that the Expo CLI version you use is compatible with your app.
### Useful links
- [Expo Development CLI](https://docs.expo.io/versions/latest/introduction/installation#local-development-tool-expo-cli)
- [Getting started with Expo apps](https://devcenter.bitrise.io/getting-started/getting-started-with-expo-apps/)
### Related Steps
- [Install React Native](https://www.bitrise.io/integrations/steps/install-react-native)
- [Install missing Android SDK components](https://www.bitrise.io/integrations/steps/install-missing-android-tools)
- [Run CocoaPods install](https://www.bitrise.io/integrations/steps/cocoapods-install)
website: https://github.com/bitrise-steplib/steps-expo-detach
source_code_url: https://github.com/bitrise-steplib/steps-expo-detach
support_url: https://github.com/bitrise-steplib/steps-expo-detach/issues
project_type_tags:
- react-native
type_tags:
- utility
toolkit:
go:
package_name: github.com/bitrise-steplib/steps-expo-detach
inputs:
- project_path: $BITRISE_SOURCE_DIR
opts:
title: Working directory
summary: The root directory of the React Native project
description: |-
The root directory of the React Native project (the directory of the project package.js file).
- expo_cli_verson: "latest"
opts:
title: Expo CLI version
summary: Specify the Expo CLI version to install.
description: |-
Specify the Expo CLI version to install.
The Expo CLI ejects your project and creates Xcode and Android Studio projects for your app.
[https://docs.expo.io/versions/latest/introduction/installation#local-development-tool-expo-cli](https://docs.expo.io/versions/latest/introduction/installation#local-development-tool-expo-cli)
A couple of examples:
* "3.0.0"
* latest
is_required: "true"
- user_name: ""
opts:
title: Username for Expo
summary: Username for Expo
description: |-
Your account's username for `https://expo.io/` . If provided, `expo login` will be run before eject.
Required if `run_publish` is set to "yes".
**NOTE:** You need to use your username and not your e-mail address.
- password: ""
opts:
title: Password for your Expo account
summary: Password for your Expo account.
description: |-
Your password for `https://expo.io/` . If provided, `expo login` will be run before eject.
Required if `run_publish` is set to "yes".
is_sensitive: true
- run_publish: "no"
opts:
title: Run expo publish after eject?
summary: Should the step run `expo publish` after eject?
description: |-
Should the step run `expo publish` after eject?
If set to "yes" both, `user_name` and `password` are required to be provided.
value_options:
- "yes"
- "no"
- override_react_native_version:
opts:
title: React Native version to set in package.json
summary: React Native version to set in package.json after the eject process.
description: |-
React Native version to set in package.json after the eject process.