@@ -18,13 +18,13 @@ checkout step for each job: &addWorkspace
18
18
default config for js : &js_defaults
19
19
<< : *defaults
20
20
docker :
21
- - image : circleci/node:10
21
+ - image : circleci/node:12
22
22
23
23
default config for macOS : &macos_defaults
24
24
<< : *defaults
25
25
resource_class : ' medium'
26
26
macos :
27
- xcode : ' 10.1 .0'
27
+ xcode : ' 11.7 .0'
28
28
29
29
default config for android apk builds : &android_defaults
30
30
<< : *defaults
@@ -41,31 +41,6 @@ default config for android apk builds: &android_defaults
41
41
# CACHE CONFIG
42
42
# ==============================
43
43
44
- # brew
45
- save brew cache : &cache_save_brew
46
- name : Saving Brew cache
47
- paths :
48
- - /usr/local/Homebrew
49
- - ~/Library/Caches/Homebrew
50
- key : legacy-brew-cache-{{ arch }}
51
-
52
- restore brew cache : &cache_restore_brew
53
- name : Restoring Brew cache
54
- keys :
55
- - legacy-brew-cache-{{ arch }}
56
-
57
- save brew cache for android : &cache_save_brew_android
58
- name : Saving Brew cache for android
59
- paths :
60
- - /usr/local/Homebrew
61
- - ~/Library/Caches/Homebrew
62
- key : legacy-brew-cache-{{ arch }}-android
63
-
64
- restore brew cache for android : &cache_restore_brew_android
65
- name : Restoring Brew cache for android
66
- keys :
67
- - legacy-brew-cache-{{ arch }}-android
68
-
69
44
# yarn
70
45
save yarn cache : &cache_save_yarn
71
46
name : Saving Yarn cache
@@ -141,37 +116,24 @@ jobs:
141
116
<< : *macos_defaults
142
117
steps :
143
118
- *addWorkspace
144
- - restore-cache : *cache_restore_brew
145
119
- run :
146
- name : Configure OSX Environment
120
+ name : Configure macOS Environment
147
121
command : |
148
- HOMEBREW_NO_AUTO_UPDATE=1 brew install node@8 >/dev/null
149
- HOMEBREW_NO_AUTO_UPDATE=1 brew tap wix/brew >/dev/null
150
- HOMEBREW_NO_AUTO_UPDATE=1 brew install applesimutils >/dev/null
122
+ brew bundle --file=.circleci/Brewfile.ios --no-lock
151
123
touch .watchmanconfig
152
124
node -v
153
- - save-cache : *cache_save_brew
154
125
- restore-cache : *cache_restore_yarn
155
126
- run :
156
127
name : Installing Yarn dependencies
157
128
command : yarn --pure-lockfile --non-interactive --cache-folder ~/.cache/yarn
158
129
- save-cache : *cache_save_yarn
159
- - restore_cache :
160
- key : 1-gems-{{ checksum "example/ios/Gemfile.lock" }}
161
- - run :
162
- name : Install CocoaPods
163
- command : cd example/ios && bundle check || bundle install --path vendor/bundle
164
- - save_cache :
165
- key : 1-gems-{{ checksum "example/ios/Gemfile.lock" }}
166
- paths :
167
- - vendor/bundle
168
130
- run :
169
131
name : Install pod dependencies
170
- command : cd example/ios && bundle exec pod install
132
+ working_directory : example/ios
133
+ command : pod install
171
134
- run :
172
135
name : Build iOS app
173
136
command : yarn build:e2e:ios
174
-
175
137
- run :
176
138
name : Run e2e tests
177
139
command : yarn test:e2e:ios
@@ -191,7 +153,8 @@ jobs:
191
153
- restore-cache : *cache_restore_gradle_build
192
154
- run :
193
155
name : Downloading Gradle dependencies
194
- command : cd example/android && ./gradlew --max-workers 2 fetchDependencies
156
+ working_directory : example/android
157
+ command : ./gradlew --max-workers 2 fetchDependencies
195
158
- save-cache : *cache_save_gradle_wrapper
196
159
- save-cache : *cache_save_gradle_build
197
160
@@ -201,7 +164,8 @@ jobs:
201
164
command : mkdir example/android/app/src/main/assets && npx react-native bundle --platform android --dev false --entry-file example/index.js --bundle-output example/android/app/src/main/assets/index.android.bundle --assets-dest example/android/app/src/main/res/
202
165
- run :
203
166
name : Build Android apk
204
- command : cd example/android && ./gradlew assembleRelease assembleAndroidTest -DtestBuildType=release --max-workers 2 -x bundleReleaseJsAndAssets
167
+ working_directory : example/android
168
+ command : ./gradlew assembleRelease assembleAndroidTest -DtestBuildType=release --max-workers 2 -x bundleReleaseJsAndAssets
205
169
206
170
- persist_to_workspace :
207
171
root : ~/async_storage
@@ -223,25 +187,20 @@ jobs:
223
187
source $BASH_ENV
224
188
225
189
# Android tools
226
- - restore-cache : *cache_restore_brew_android
227
190
- run :
228
191
name : Install Android SDK tools
229
192
command : |
230
- HOMEBREW_NO_AUTO_UPDATE=1 brew tap homebrew/cask >/dev/null
231
- HOMEBREW_NO_AUTO_UPDATE=1 brew cask install android-sdk >/dev/null
232
- HOMEBREW_NO_AUTO_UPDATE=1 brew cask install intel-haxm >/dev/null
233
- HOMEBREW_NO_AUTO_UPDATE=1 brew install node@8 >/dev/null >/dev/null
234
- - save-cache : *cache_save_brew_android
193
+ brew bundle --file=.circleci/Brewfile.android --no-lock
235
194
236
195
- run :
237
196
name : Install Android emulator
238
197
shell : /bin/bash -e
239
198
command : |
240
- yes | sdkmanager "platform-tools" "tools" > /dev/null
241
- yes | sdkmanager "platforms;android-28" "system-images;android-21;google_apis;x86" > /dev/null
242
- yes | sdkmanager "emulator" --channel=3 > /dev/null
243
- yes | sdkmanager "build-tools;28.0.3" > /dev/null
244
- yes | sdkmanager --licenses > /dev/null
199
+ yes | sdkmanager "platform-tools" "tools" 1> /dev/null
200
+ yes | sdkmanager "platforms;android-28" "system-images;android-21;google_apis;x86" 1> /dev/null
201
+ yes | sdkmanager "emulator" --channel=3 1> /dev/null
202
+ yes | sdkmanager "build-tools;28.0.3" 1> /dev/null
203
+ yes | sdkmanager --licenses 1> /dev/null
245
204
yes | sdkmanager --list
246
205
247
206
- run :
0 commit comments