Skip to content
Closed
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/actions/cancel-e2e-runs/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ runs:
owner,
repo,
sha,
state: 'error',
state: 'success',
context: statusContext,
description: reason.substring(0, 140),
});
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/e2e-detox.yml
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ jobs:
|| needs.run-ios-tests.outputs.FAILURES == '0' && format('All {0} tests passed', needs.run-ios-tests.outputs.TOTAL)
|| format('{0} passed, {1} failed, {2} skipped', needs.run-ios-tests.outputs.PASSES || '?', needs.run-ios-tests.outputs.FAILURES || '?', needs.run-ios-tests.outputs.SKIPPED || '0') }}
status: ${{ (needs.run-ios-tests.result == 'skipped' && 'failure') || needs.run-ios-tests.outputs.STATUS || 'failure' }}
target_url: ${{ needs.run-ios-tests.outputs.TARGET_URL }}
target_url: ${{ needs.run-ios-tests.outputs.TARGET_URL || format('{0}/{1}/actions/runs/{2}', github.server_url, github.repository, github.run_id) }}

update-final-status-android:
runs-on: ubuntu-22.04
Expand Down Expand Up @@ -162,7 +162,7 @@ jobs:
|| needs.run-android-tests.outputs.FAILURES == '0' && format('All {0} tests passed', needs.run-android-tests.outputs.TOTAL)
|| format('{0} passed, {1} failed, {2} skipped', needs.run-android-tests.outputs.PASSES || '?', needs.run-android-tests.outputs.FAILURES || '?', needs.run-android-tests.outputs.SKIPPED || '0') }}
status: ${{ (needs.run-android-tests.result == 'skipped' && 'failure') || needs.run-android-tests.outputs.STATUS || 'failure' }}
target_url: ${{ needs.run-android-tests.outputs.TARGET_URL }}
target_url: ${{ needs.run-android-tests.outputs.TARGET_URL || format('{0}/{1}/actions/runs/{2}', github.server_url, github.repository, github.run_id) }}

update-final-status-ipad:
runs-on: ubuntu-22.04
Expand Down Expand Up @@ -190,4 +190,4 @@ jobs:
|| needs.run-ios-ipad-tests.outputs.FAILURES == '0' && format('All {0} tests passed', needs.run-ios-ipad-tests.outputs.TOTAL)
|| format('{0} passed, {1} failed, {2} skipped', needs.run-ios-ipad-tests.outputs.PASSES || '?', needs.run-ios-ipad-tests.outputs.FAILURES || '?', needs.run-ios-ipad-tests.outputs.SKIPPED || '0') }}
status: ${{ (needs.run-ios-ipad-tests.result == 'skipped' && 'failure') || needs.run-ios-ipad-tests.outputs.STATUS || 'failure' }}
target_url: ${{ needs.run-ios-ipad-tests.outputs.TARGET_URL }}
target_url: ${{ needs.run-ios-ipad-tests.outputs.TARGET_URL || format('{0}/{1}/actions/runs/{2}', github.server_url, github.repository, github.run_id) }}
7 changes: 5 additions & 2 deletions .github/workflows/e2e-ios-template.yml
Original file line number Diff line number Diff line change
Expand Up @@ -212,9 +212,10 @@ jobs:

- name: Install Homebrew Dependencies
run: |
brew trust wix/brew 2>/dev/null || true
# Trust must come after tap — the tap directory must exist before brew trust can act on it.
brew tap wix/brew
brew install applesimutils || true
brew trust wix/brew
brew install applesimutils
# Cache restores Cellar without /opt/homebrew/bin symlinks — link the tap formula explicitly.
brew link --overwrite --force wix/brew/applesimutils 2>/dev/null \
|| brew link --overwrite applesimutils
Expand Down Expand Up @@ -717,6 +718,7 @@ jobs:

- name: Save report Detox Dependencies
id: report-link
continue-on-error: true
Comment thread
coderabbitai[bot] marked this conversation as resolved.
run: |
cd detox
npm ci
Expand Down Expand Up @@ -752,6 +754,7 @@ jobs:

- name: Set Target URL
id: set-url
if: steps.report-link.outcome == 'success'
run: |
echo "TARGET_URL=https://${{ env.DETOX_AWS_S3_BUCKET }}.s3.amazonaws.com/${{ steps.s3.outputs.path }}/jest-stare/ios-report.html" >> ${GITHUB_OUTPUT}

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/e2e-maestro-pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ jobs:
env:
COMMIT_SHA: ${{ inputs.MOBILE_VERSION }}
STATUS: ${{ (needs.run-maestro-ios.result == 'skipped' && 'failure') || needs.run-maestro-ios.outputs.STATUS || 'failure' }}
TARGET_URL: ${{ needs.run-maestro-ios.outputs.TARGET_URL }}
TARGET_URL: ${{ needs.run-maestro-ios.outputs.TARGET_URL || format('{0}/{1}/actions/runs/{2}', github.server_url, github.repository, github.run_id) }}
DESCRIPTION: >-
${{ needs.run-maestro-ios.result == 'skipped' && 'Build failed — Maestro iOS tests did not run'
|| needs.run-maestro-ios.outputs.FAILURES == '-1' && 'All test machines failed before producing results'
Expand Down Expand Up @@ -167,7 +167,7 @@ jobs:
env:
COMMIT_SHA: ${{ inputs.MOBILE_VERSION }}
STATUS: ${{ (needs.run-maestro-android.result == 'skipped' && 'failure') || needs.run-maestro-android.outputs.STATUS || 'failure' }}
TARGET_URL: ${{ needs.run-maestro-android.outputs.TARGET_URL }}
TARGET_URL: ${{ needs.run-maestro-android.outputs.TARGET_URL || format('{0}/{1}/actions/runs/{2}', github.server_url, github.repository, github.run_id) }}
DESCRIPTION: >-
${{ needs.run-maestro-android.result == 'skipped' && 'Build failed — Maestro Android tests did not run'
|| needs.run-maestro-android.outputs.FAILURES == '-1' && 'All test machines failed before producing results'
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/e2e-maestro-template.yml
Original file line number Diff line number Diff line change
Expand Up @@ -360,10 +360,10 @@ jobs:
commitSha: process.env.GITHUB_SHA || '',
});
} else {
console.log('No Maestro report found — marking as failure');
['FAILURES=1','PASSES=0','TOTAL=0','ERRORS=1','SKIPPED=0','PERCENTAGE=0','NO_REPORT=true'].forEach(l => fs.appendFileSync(process.env.GITHUB_OUTPUT, l + '\n'));
console.log('No Maestro report found — marking as infrastructure failure');
['FAILURES=-1','PASSES=0','TOTAL=0','ERRORS=0','SKIPPED=0','PERCENTAGE=0','NO_REPORT=true'].forEach(l => fs.appendFileSync(process.env.GITHUB_OUTPUT, l + '\n'));
}
"
" || grep -q '^FAILURES=' "$GITHUB_OUTPUT" 2>/dev/null || printf 'FAILURES=-1\nPASSES=0\nTOTAL=0\nERRORS=0\nSKIPPED=0\nPERCENTAGE=0\n' >> "$GITHUB_OUTPUT"
Comment thread
coderabbitai[bot] marked this conversation as resolved.

- name: Upload Maestro Report to S3
if: always()
Expand All @@ -385,7 +385,7 @@ jobs:

- name: Set Target URL
id: set-url
if: always()
if: always() && steps.summary.conclusion == 'success' && steps.summary.outputs.FAILURES != '-1'
env:
S3_BUCKET: ${{ env.DETOX_AWS_S3_BUCKET }}
run: |
Expand Down Expand Up @@ -698,10 +698,10 @@ jobs:
commitSha: process.env.GITHUB_SHA || '',
});
} else {
console.log('No Maestro report found — marking as failure');
['FAILURES=1','PASSES=0','TOTAL=0','ERRORS=1','SKIPPED=0','PERCENTAGE=0','NO_REPORT=true'].forEach(l => fs.appendFileSync(process.env.GITHUB_OUTPUT, l + '\n'));
console.log('No Maestro report found — marking as infrastructure failure');
['FAILURES=-1','PASSES=0','TOTAL=0','ERRORS=0','SKIPPED=0','PERCENTAGE=0','NO_REPORT=true'].forEach(l => fs.appendFileSync(process.env.GITHUB_OUTPUT, l + '\n'));
}
"
" || grep -q '^FAILURES=' "$GITHUB_OUTPUT" 2>/dev/null || printf 'FAILURES=-1\nPASSES=0\nTOTAL=0\nERRORS=0\nSKIPPED=0\nPERCENTAGE=0\n' >> "$GITHUB_OUTPUT"

- name: Upload Maestro Report to S3
if: always()
Expand All @@ -723,7 +723,7 @@ jobs:

- name: Set Target URL
id: set-url
if: always()
if: always() && steps.summary.conclusion == 'success' && steps.summary.outputs.FAILURES != '-1'
env:
S3_BUCKET: ${{ env.DETOX_AWS_S3_BUCKET }}
run: |
Expand Down
Loading