mirror of
https://github.com/inaturalist/iNaturalistReactNative.git
synced 2025-12-23 22:18:36 -05:00
(CI) run detox once (leaner flags) then retry once on failure with recordings / verbose logs (#3294)
* MOB-1071 run lean detox once, retry once on failure with recordings / verbose logs * don't retry on status check failure
This commit is contained in:
15
.github/workflows/e2e_ios.yml
vendored
15
.github/workflows/e2e_ios.yml
vendored
@@ -213,6 +213,7 @@ jobs:
|
|||||||
brew install applesimutils
|
brew install applesimutils
|
||||||
|
|
||||||
- name: Ensure servers are running
|
- name: Ensure servers are running
|
||||||
|
id: status_check
|
||||||
run: |
|
run: |
|
||||||
# is rails running?
|
# is rails running?
|
||||||
curl -I --fail "https://staging.inaturalist.org/ping"
|
curl -I --fail "https://staging.inaturalist.org/ping"
|
||||||
@@ -220,12 +221,22 @@ jobs:
|
|||||||
curl -I --fail "https://stagingapi.inaturalist.org/v2/taxa"
|
curl -I --fail "https://stagingapi.inaturalist.org/v2/taxa"
|
||||||
|
|
||||||
- name: Run e2e test
|
- name: Run e2e test
|
||||||
run: npm run e2e:test:ios -- --cleanup --take-screenshots failing --record-videos failing --record-logs all -l trace
|
run: |
|
||||||
|
npm run e2e:test:ios
|
||||||
|
|
||||||
|
- name: Run e2e test (retry, with logs)
|
||||||
|
# do not retry if status check fails
|
||||||
|
if: ${{ failure() && steps.status_check.outcome != 'failure' }}
|
||||||
|
run: |
|
||||||
|
# provide more debugging context on retry failure
|
||||||
|
# we're explicitly not using `detox test --retries` for this reason
|
||||||
|
npm run e2e:test:ios -- --take-screenshots failing --record-videos failing --record-logs all -l trace
|
||||||
|
|
||||||
# The artifacts for the failing tests are available for download on github.com on the page of the individual actions run
|
# The artifacts for the failing tests are available for download on github.com on the page of the individual actions run
|
||||||
- name: Store Detox artifacts on test failure
|
- name: Store Detox artifacts on test failure
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
if: failure()
|
# no artifacts if status check fails
|
||||||
|
if: ${{ failure() && steps.status_check.outcome != 'failure' }}
|
||||||
with:
|
with:
|
||||||
name: detox-artifacts
|
name: detox-artifacts
|
||||||
path: artifacts
|
path: artifacts
|
||||||
|
|||||||
Reference in New Issue
Block a user