1- version : 2
1+ version : 2.1
2+ orbs :
3+ android : circleci/android@2.0
24jobs :
35 danger :
46 docker :
@@ -70,24 +72,22 @@ jobs:
7072 path : InstabugSample/test-results
7173
7274 test_android :
75+ executor :
76+ name : android/android-machine
77+ tag : " 2022.03.1"
7378 working_directory : ~/project/InstabugSample
74- docker :
75- - image : circleci/android@sha256:793ae9aa1777ba7fc375109978b307ed03a49be468295a8778d588eba0670e4b
76- environment :
77- JVM_OPTS : -Xmx3200m
7879 steps :
7980 - checkout :
8081 path : ~/project
81- - run : yarn
82- - run :
83- name : chmod permissions
84- command : cd android && chmod +x ./gradlew
8582 - run :
86- name : Download Dependencies
87- command : cd android && ./gradlew androidDependencies
83+ name : Install Yarn
84+ command : npm install -g yarn
8885 - run :
89- name : Run UnitTest
90- command : cd android && ./gradlew test
86+ name : Install Node Packages
87+ command : yarn
88+ - android/run-tests :
89+ working-directory : ./android
90+ test-command : ./gradlew test
9191
9292 test_ios :
9393 macos :
@@ -146,62 +146,37 @@ jobs:
146146 command : detox test --configuration ios.sim.release --cleanup
147147
148148 e2e_android :
149- macos :
150- xcode : " 10.2.0"
151- working_directory : ~/project/InstabugSample
149+ executor :
150+ name : android/android-machine
151+ tag : " 2022.03.1"
152+ working_directory : ~/project/InstabugSample/android
152153 steps :
153154 - checkout :
154155 path : ~/project
155- - run :
156- name : Install Android SDK
157- command : |
158- HOMEBREW_NO_AUTO_UPDATE=1 brew tap homebrew/cask
159- HOMEBREW_NO_AUTO_UPDATE=1 brew cask install android-sdk
160- - run :
161- name : Accept Android SDK Licenses
162- command : (yes | sdkmanager --licenses) || true
163- - run :
164- name : Setup Android Environment Variables
165- command : |
166- echo 'export JAVA_HOME=`/usr/libexec/java_home -v 1.8`' >> $BASH_ENV
167- echo 'export ANDROID_HOME=/usr/local/share/android-sdk' >> $BASH_ENV
168- echo 'export ANDROID_SDK_ROOT=/usr/local/share/android-sdk' >> $BASH_ENV
169- echo 'export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools' >> $BASH_ENV
170- - run :
171- name : SDK Manager - Download Emulator Image
172- command : (yes | sdkmanager "platform-tools" "platforms;android-27" "extras;intel;Hardware_Accelerated_Execution_Manager" "build-tools;27.0.3" "system-images;android-27;google_apis;x86" "emulator" --verbose) || true
173- - run :
174- name : AVD Manager - Setup Emulator
175- command : avdmanager create avd -n Nexus_6P_API_27 -k "system-images;android-27;google_apis;x86" -g google_apis -d "Nexus 6P"
176- - run :
177- name : Run Emulator in background
178- command : /usr/local/share/android-sdk/emulator/emulator @Nexus_6P_API_27 -noaudio -no-boot-anim -no-window
179- background : true
180- - run :
181- name : Install Node Packages
182- command : sudo yarn
183- - run :
184- name : Generate Android Keystore
185- command : cd android/app && keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000 -dname "CN=AA, OU=AA, O=AA, L=AA, S=AA, C=EG"
186- - run :
187- name : Make gradlew Executable
188- command : cd android && chmod +x ./gradlew
189- - run :
190- name : Download Android Dependencies
191- command : cd android && ./gradlew androidDependencies
156+ - run :
157+ name : Install Yarn
158+ command : npm install --global yarn
192159 - run :
193160 name : Install Detox CLI
194- command : sudo npm install -g detox-cli
161+ command : npm install --global detox-cli
195162 - run :
196- name : Detox - Build Release App
197- command : |
198- sudo chmod -R 777 /Users/distiller/project/InstabugSample/node_modules/instabug-reactnative
199- detox build --configuration android.emu.release
163+ name : Install Node Packages
164+ command : yarn
165+ - android/create-avd :
166+ avd-name : Nexus_6P_API_27
167+ install : true
168+ system-image : system-images;android-27;default;x86
169+ - android/start-emulator :
170+ avd-name : Nexus_6P_API_27
171+ no-window : true
172+ post-emulator-launch-assemble-command : |
173+ rm -rf ~/.gradle/caches
174+ ./gradlew androidDependencies
175+ cd ..
176+ detox build -c android.emu.release
200177 - run :
201178 name : Detox - Run E2E Tests
202- command : |
203- sudo chmod -R 777 /Users/distiller/Library/Detox
204- detox test --configuration android.emu.release --cleanup
179+ command : cd .. && detox test -c android.emu.release
205180
206181 publish :
207182 macos :
@@ -216,7 +191,6 @@ jobs:
216191 - run : cd project && Escape react-native publish
217192
218193workflows :
219- version : 2
220194 publish :
221195 jobs :
222196 - danger :
@@ -226,15 +200,15 @@ workflows:
226200 - test_android
227201 - test_ios
228202 - e2e_ios
229- # - e2e_android
203+ - e2e_android
230204 - hold :
231205 requires :
232206 - test_module
233207 - test_sample
234- # - test_android
208+ - test_android
235209 - test_ios
236210 - e2e_ios
237- # - e2e_android
211+ - e2e_android
238212 type : approval
239213 filters :
240214 branches :
0 commit comments