MetaMask / MetaMask/metamask-extension

Mobile: Investigate Migration from Bitrise to GitHub Actions for PR Smoke Tests

Open
#30,285 0 comments 0 reactions 0 assignees View on GitHub
INVALID-ISSUE-TEMPLATE team-dev-ops
Dominant language
TypeScript
Stars
13.2k
Forks
5.6k
Avg merge
2d 5h
Merged PRs (30d)
451

Description

#### **Description**
We want to evaluate the feasibility and cost-benefit of migrating from **Bitrise to GitHub Actions** for running **PR smoke tests** on our React Native mobile application. This investigation should focus on setting up **build and end-to-end (E2E) testing** for both **Android and iOS** in GitHub Actions, using the existing [Bitrise workflow](https://github.com/MetaMask/metamask-mobile/blob/b3f0ee771b515eb4c9bedda52148c74d3febdd39/bitrise.yml#L52) as a reference.

#### **Scenario**
NA

#### **Technical Details**
- Set up a **GitHub Actions workflow** that can build and run E2E tests on both Android and iOS.
- Reference the [existing Bitrise workflow](https://github.com/MetaMask/metamask-mobile/blob/b3f0ee771b515eb4c9bedda52148c74d3febdd39/bitrise.yml#L52) to configure the machine setup in GitHub Actions.
- Collaborate with **QA** to ensure the E2E test execution is successful.
- Compare **costs, execution time, and reliability** between Bitrise and GitHub Actions.
- Identify **any risks or benefits** of switching to GitHub Actions.

#### **Threat Modeling Framework**
- **What are we working on?**
- Evaluating GitHub Actions as an alternative CI/CD system to Bitrise for PR smoke tests.
- **What can go wrong?**
- Secret Management for .env and certificates
- **What are we going to do about it?**
- Use test secrets for this purpose
- Then work with the security team to confirm a secure secret location.
- **Did we do a good job?**
- The final report should include a **clear cost comparison** and an evaluation of any risks/benefits of migration.

#### **Acceptance Criteria**
- [ ] GitHub Actions workflow successfully builds the app for **Android and iOS**.
- [ ] GitHub Actions workflow successfully runs **E2E tests**.
- [ ] Collaboration with QA to validate test execution.
- [ ] Comparison of **cost, performance, and reliability** between Bitrise and GitHub Actions.
- [ ] Clear documentation of **potential risks and benefits** of switching CI systems.

#### **Stakeholder Review**
- [x] Engineering
- [x] QA

#### **References**
- [Bitrise Workflow](https://github.com/MetaMask/metamask-mobile/blob/b3f0ee771b515eb4c9bedda52148c74d3febdd39/bitrise.yml#L52)
- GitHub Actions Documentation: [https://docs.github.com/en/actions](https://docs.github.com/en/actions)

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the existing Bitrise workflow in bitrise.yml at the referenced line and the GitHub Actions documentation. Evaluate Android and iOS builds and E2E execution with QA, then document cost, performance, reliability, secret-management risks, and migration benefits in a final comparison.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, react-native, typescript
Domain
ci-cd, devops, mobile
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.