Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improving Functional Test Reliability for Beta and Prod Environments in OSSD #3182

Closed
VonnyJap opened this issue Aug 30, 2024 · 3 comments
Closed

Comments

@VonnyJap
Copy link
Member

What happened:

We run functional tests against the beta and prod environments for Open Source SD using the screwdriver-cd/screwdriver pipeline. Unfortunately, this pipeline has become very unstable, causing significant delays and blocking further releases.

Notable causes of flaky tests:

  • As we continue running more tests, we've encountered GitHub rate limiting
  • We have also faced issues with longer-running tests that eventually time out.

What you expected to happen:

A reliable set of functional tests that can be used to certify the version release.

How to reproduce it:

Go to the pipeline and select a random event, such as this one. Notice how many restarts are required to get the entire test suite to pass.

@VonnyJap VonnyJap changed the title Improving the Reliability of Functional tests for Beta and Prod Env in OSSD Improving Functional Test Reliability for Beta and Prod Environments in OSSD Aug 30, 2024
@VonnyJap
Copy link
Member Author

VonnyJap commented Sep 4, 2024

@kumada626 @sagar1312 - The plan is right now to tackle the problem with inconsistent and unreliable functional tests by splitting the tasks into two parallel jobs running with two different Github users. This hopefully will help to avoid the rate limiting.

@yakanechi
Copy link
Contributor

yakanechi commented Sep 13, 2024

@VonnyJap

We have also faced issues with longer-running tests that eventually time out.

To solve the above problem, we proposed the following PR to speed up testing by parallelization.
#3194

However, as mentioned in the PR, the test will run faster than the Github rate limit reset, so the rate limit problem may occur again.

As a workaround, it may be possible to achieve both higher speed and avoidance of ghe rate limit by further dividing the test account as in beta-x1 into accounts like beta, beta-x1, prod, and prod-x1.

@VonnyJap
Copy link
Member Author

@yakanechi - I learned that personal access token has the lowest rate limit. But if we can make a switch to use either oauth or github apps model of auth, it will help to avoid the rate limit. Please checkout the docs here. But we have not had time to incorporate the change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants