@@ -6,6 +6,11 @@ Publish, build or manage your [Expo][link-expo] Project with GitHub Actions!
66This repository contains a prebuilt base image with GitHub Actions implementations.
77You can also use [ the base image] [ link-base ] in other Docker-based environments.
88
9+ 1 . [ What's inside?] ( #whats-inside )
10+ 2 . [ Used secrets] ( #used-secrets )
11+ 3 . [ Example workflows] ( #example-workflows )
12+ 4 . [ Things to know] ( #things-to-know )
13+
914## What's inside?
1015
1116Within this Expo CLI action, you have full access to the original [ Expo CLI] [ link-expo-cli ] .
@@ -16,14 +21,7 @@ Also, this action will authenticate automatically when both `EXPO_CLI_USERNAME`
1621> You can also add ` expo-cli ` as a dependency to your project and use the official [ NPM action] [ link-actions-npm ] for example.
1722> However, when you do that you need to manage authentication yourself.
1823
19- ### Why use a base-image?
20-
21- Every GitHub action will start from scratch using the dockerfile as the starting point.
22- If you define ` expo-cli ` in this dockerfile, it will install it every time you run an action.
23- By using [ a prebuilt image] [ link-base ] , it basically "skips" the process of downloading the full CLI over and over again.
24- This makes the Expo actions overall faster.
25-
26- ### Used secrets
24+ ## Used secrets
2725
2826To authenticate with your Expo account, use the variables listed below.
2927In the Expo action you can define ` secrets = ["EXPO_CLI_USERNAME", "EXPO_CLI_PASSWORD"] ` to have them available.
@@ -36,15 +34,6 @@ variable | description
3634> Some Expo commands don't require authentication.
3735> Simply omit the ` secrets = [...] ` if you don't need it.
3836
39- ### Some caveats
40-
41- #### Overwriting ` NODE_OPTIONS `
42-
43- By default, Node has a "limited" memory limit.
44- To fully use the available memory in GitHub Actions, the ` NODE_OPTIONS ` variable is set to ` --max_old_space_size=4096 ` .
45- If you need to overwrite this variable, make sure you add this value too or risk Node running out of memory.
46- See [ issue #12 ] [ link-issue-memory ] for more info.
47-
4837## Example workflows
4938
5039Before you dive into the workflow examples, you should know the basics of GitHub Actions.
@@ -148,6 +137,29 @@ action "Build" {
148137}
149138```
150139
140+ ### Things to know
141+
142+ #### Automatic Expo login
143+
144+ You need to authenticate for some Expo commands, like ` expo publish ` and ` expo build:* ` .
145+ This project has an additional feature to make this easy and secure.
146+ The [ ` entrypoint.sh ` ] [ link-expo-cli-proxy ] is a simple bash script which is [ set as a proxy for the original ` expo ` command] [ link-docker-expo-proxy ] .
147+ If you don't want to use this, you can call the original Expo command directly using ` expo-cli publish ` .
148+
149+ #### Why use a base-image?
150+
151+ Every GitHub action will start from scratch using the dockerfile as the starting point.
152+ If you define ` expo-cli ` in this dockerfile, it will install it every time you run an action.
153+ By using [ a prebuilt image] [ link-base ] , it basically "skips" the process of downloading the full CLI over and over again.
154+ This makes the Expo actions overall faster.
155+
156+ #### Overwriting ` NODE_OPTIONS `
157+
158+ By default, Node has a "limited" memory limit.
159+ To fully use the available memory in GitHub Actions, [ the ` NODE_OPTIONS ` variable is set to ` --max_old_space_size=4096 ` ] [ link-docker-node-options ] .
160+ If you need to overwrite this variable, make sure you add this value too or risk Node running out of memory.
161+ See [ issue #12 ] [ link-issue-memory ] for more info.
162+
151163## License
152164
153165The MIT License (MIT). Please see [ License File] ( LICENSE.md ) for more information.
@@ -161,7 +173,10 @@ The MIT License (MIT). Please see [License File](LICENSE.md) for more informatio
161173[ link-actions ] : https://developer.github.com/actions/
162174[ link-actions-npm ] : https://github.com/actions/npm
163175[ link-base ] : base/3
176+ [ link-docker-expo-proxy ] : Dockerfile#L7
177+ [ link-docker-node-options ] : Dockerfile#L11
164178[ link-expo ] : https://expo.io
165179[ link-expo-cli ] : https://docs.expo.io/versions/latest/workflow/expo-cli
166180[ link-expo-cli-password ] : https://github.com/expo/expo-cli/blob/8ea616d8848a123270b97e226e33dcb3dde49653/packages/expo-cli/src/accounts.js#L94
181+ [ link-expo-cli-proxy ] : entrypoint.sh
167182[ link-issue-memory ] : https://github.com/expo/expo-github-action/issues/12
0 commit comments