Skip to content

Conversation

@alwx
Copy link
Contributor

@alwx alwx commented Dec 18, 2025

📢 Type of change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring

📜 Description

Enabled Cirrus Labs runners for e2e tests. Fixes #5418

⚠️ This one is not to be merged immediately — I simply want to run all the tests first to validate how it improves with Cirrus Labs runners.

💡 Motivation and Context

💚 How did you test it?

📝 Checklist

  • I added tests to verify changes
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • All tests passing
  • No breaking changes

🔮 Next steps

@alwx alwx self-assigned this Dec 18, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Dec 18, 2025

Fails
🚫 Please consider adding a changelog entry for the next release.

Instructions and example for changelog

Please add an entry to CHANGELOG.md to the "Unreleased" section. Make sure the entry includes this PR's number.

Example:

## Unreleased

### Features

- e2e tests on Cirrus Labs runners ([#5485](https://github.com/getsentry/sentry-react-native/pull/5485))

If none of the above apply, you can opt out of this check by adding #skip-changelog to the PR description or adding a skip-changelog label.

Generated by 🚫 dangerJS against 83a3d6a

@alwx alwx marked this pull request as ready for review December 18, 2025 10:44
@alwx alwx added the ready-to-merge Triggers the full CI test suite label Dec 18, 2025
@alwx alwx changed the title e2e tests on Cirrus Labs runners DO NOT MERGE: e2e tests on Cirrus Labs runners Dec 18, 2025
Comment on lines 47 to 57
platform: ["ios", "android"]
include:
- platform: ios
runs-on: macos-26
runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2", "runner_group_id:12"]
name: iOS
appPlain: performance-tests/test-app-plain.ipa
- platform: android
# Not using the latest version due to a known issue: https://github.com/getsentry/sentry-react-native/issues/4418
runs-on: ubuntu-22.04
runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:22.04", "runner_group_id:12"]
name: Android
appPlain: performance-tests/TestAppPlain/android/app/build/outputs/apk/release/app-release.apk
steps:

This comment was marked as outdated.

Comment on lines 47 to 57
platform: ["ios", "android"]
include:
- platform: ios
runs-on: macos-26
runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2", "runner_group_id:12"]
name: iOS
appPlain: performance-tests/test-app-plain.ipa
- platform: android
# Not using the latest version due to a known issue: https://github.com/getsentry/sentry-react-native/issues/4418
runs-on: ubuntu-22.04
runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:22.04", "runner_group_id:12"]
name: Android
appPlain: performance-tests/TestAppPlain/android/app/build/outputs/apk/release/app-release.apk
steps:
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: The runs-on array syntax ["image", "runner_group_id:12"] is invalid. GitHub Actions will wait indefinitely for a runner with both labels, which will never exist, causing jobs to hang.
Severity: CRITICAL | Confidence: High

🔍 Detailed Analysis

The workflow jobs metrics, react-native-build, and react-native-test use an invalid array syntax for the runs-on key, such as ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2", "runner_group_id:12"]. GitHub Actions interprets this as requiring a runner that has both labels. However, runner_group_id:12 is not a valid label for Cirrus Runners. As a result, no runner will ever match the criteria, causing the jobs to hang indefinitely and eventually time out, blocking the CI/CD pipeline.

💡 Suggested Fix

Remove the invalid runner_group_id:12 element from the runs-on array. The correct configuration should only specify the container image, like runs-on: "ghcr.io/cirruslabs/macos-tahoe-xcode:26.2". This should be applied to all affected jobs.

🤖 Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent.
Verify if this is a real issue. If it is, propose a fix; if not, explain why it's not
valid.

Location: .github/workflows/e2e-v2.yml#L47-L57

Potential issue: The workflow jobs `metrics`, `react-native-build`, and
`react-native-test` use an invalid array syntax for the `runs-on` key, such as
`["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2", "runner_group_id:12"]`. GitHub Actions
interprets this as requiring a runner that has both labels. However,
`runner_group_id:12` is not a valid label for Cirrus Runners. As a result, no runner
will ever match the criteria, causing the jobs to hang indefinitely and eventually time
out, blocking the CI/CD pipeline.

Did we get this right? 👍 / 👎 to inform future reviews.
Reference ID: 7703441

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-to-merge Triggers the full CI test suite

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Optimize CI build times with Cirrus Labs

2 participants