aws-amplify / aws-amplify/amplify-hosting
Individual GitHub Checks for Monorepo with Preview builds
- Dominant language
- Dockerfile
- Stars
- 481
- Forks
- 123
- PR merge metrics
- No merged PRs in 30d
Description
**Is your feature request related to a problem? Please describe.**
Related to #2366
We are unable to determine if a single Amplify app has failed as there is only a single GitHub check that is updated for the GitHub Pull Request. This could be a race condition that leads to the last check status winning.
**Describe the solution you'd like**
- Each GitHub Check should include the AppId in the check name.
- Each GitHub Check will set the `output` of the check with the current state: queued, deploying backend, building, testing, deploying frontend.
- Each GitHub Check will set the `conclusion` of the check with the associated conclusion status.
- Each GitHub Check will set the `completed_at` upon completion of the build.
**Additional context**
It is my understanding that each Amplify Application Preview build is orchestrated in isolation, without knowledge of the other builds. If there is an orchestration layer above this for Preview Builds with a monorepo then there could be alternative methods to accomplish the same granularity without a unique check name per Amplify AppId.
Contributor guide
Research direction
No files or tests are named. Start by tracing how Amplify Application Preview builds create and update GitHub Checks, then verify whether monorepo builds are coordinated above individual builds. Done means each AppId has a distinct check whose output, conclusion, and completion time reflect the listed build states.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, github
- Domain
- ci-cd, cloud
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100