-
Notifications
You must be signed in to change notification settings - Fork 27
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
🎨 increase timeout in tip e2e test #6568
🎨 increase timeout in tip e2e test #6568
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
THOUGHT: would it make sense to include some extra env vars to tune these. Note that the timeouts depend on the machines therefore it would require different values for different CI setups. I propose having a _DELTA
,"_FACTOR" env var that can be setup on the CI side.
def get_delta(envname)
value = int(os.getenv(f"{envname}_DELTA", 0))
logger.info("%s increased by %s secs", value)
retun value
def get_factor(envname)
return int(os.getenv(f"{envname}_FACTOR", 1))
_JLAB_RUN_OPTIMIZATION_APPEARANCE_TIME: Final[int] = 2 * MINUTE + int(os.getenv("_JLAB_RUN_OPTIMIZATION_APPEARANCE_TIME_DELTA", 0))
_JLAB_RUN_OPTIMIZATION_MAX_TIME: Final[int] = 4 * MINUTE *get_factor("_JLAB_RUN_OPTIMIZATION_MAX_TIME")
_JLAB_REPORTING_MAX_TIME: Final[int] = 60 * SECOND+ get_delta("_JLAB_REPORTING_MAX_TIME")
Alternatively
def get_timeout(envname, default):
delta = int(os.getenv(f"{envname}_DELTA", 0))
factor = int(os.getenv(f"{envname}_FACTOR", 1))
value = default * factor + delta
logger.info("%s", "{envname}={value} ({default=}, {factor=}, {delta=}) ")
return value
_JLAB_RUN_OPTIMIZATION_APPEARANCE_TIME: Final = get_timeout("_JLAB_RUN_OPTIMIZATION_APPEARANCE_TIME", 2 * MINUTE)
The _JLAB_RUN_OPTIMIZATION_APPEARANCE_TIME
and _JLAB_RUN_OPTIMIZATION_APPEARANCE_TIME
can live in the CI repository and they are under version control i.e. we can see how we have been changing these in time...
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #6568 +/- ##
=========================================
- Coverage 84.5% 64.7% -19.9%
=========================================
Files 10 606 +596
Lines 214 30747 +30533
Branches 25 265 +240
=========================================
+ Hits 181 19904 +19723
- Misses 23 10782 +10759
- Partials 10 61 +51
Flags with carried forward coverage won't be shown. Click here to find out more. |
Yes, that's one of the options, but on the other hand, it adds extra complexity. It depends on what we want to measure. If we want to measure performance on a specific configuration, say in-house vs AWS, then yes, it makes sense. However, if we're only concerned with checking whether the service is working, I would keep it simple and use just one timeout (the higher of the two), so we don't deviate too much with test configurations. |
Quality Gate passedIssues Measures |
What do these changes do?
Related issue/s
How to test
Dev-ops checklist