Health Equity Tracker is a free-to-use data visualization platform that is enabling new insights into the impact of COVID-19 and other social and political determinants of health on historically underrepresented groups in the United States.
When updating PRs that affect the frontend, we have a series of GitHub actions that:
wait for the auto-generated deployment preview that Netlify makes
extract that URL and then use it as the target for our E2E tests to make sure that the PR in question doesn't break any of our expected test conditions with Playwright
However, that step has been getting flakier and flakier recently, and seems to fail on the initial run most times. Manually re-running the failed test within the github actions tab works and then the e2e tests can run as needed
We need to debug why it's flaky; it may be because we are relying on an outdated 3rd party action which is using deprecated methods (jakepartusch/wait-for-netlify-action@v1.4); either updating that to a newer identical version or re-creating the 3rd party action ourselves might work.
This is the step that is flaky and failing on the first run usually:
# in .github/workflows/runFrontendTests.yml
tests_e2e_netlify_prepare:
name: Wait for Netlify deploy
runs-on: ubuntu-latest
if: github.event_name == 'pull_request'
steps:
- name: Waiting for "Success" from Netlify Preview
uses: jakepartusch/wait-for-netlify-action@v1.4
id: waitFor200
with:
site_name: ${{env.NETLIFY_SITE_NAME}}
max_timeout: 90
When updating PRs that affect the frontend, we have a series of GitHub actions that:
However, that step has been getting flakier and flakier recently, and seems to fail on the initial run most times. Manually re-running the failed test within the github actions tab works and then the e2e tests can run as needed
We need to debug why it's flaky; it may be because we are relying on an outdated 3rd party action which is using deprecated methods (jakepartusch/wait-for-netlify-action@v1.4); either updating that to a newer identical version or re-creating the 3rd party action ourselves might work.
This is the step that is flaky and failing on the first run usually: