-
-
Notifications
You must be signed in to change notification settings - Fork 6.5k
ci(oracle): add extra sleep after container starts #11795
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
Conversation
PR Compliance Guide 🔍Below is a summary of compliance checks for this PR:
Compliance status legend🟢 - Fully Compliant🟡 - Partial Compliant 🔴 - Not Compliant ⚪ - Requires Further Human Verification 🏷️ - Compliance label |
|||||||||||||||||||||||
PR Code Suggestions ✨Explore these optional code suggestions:
|
|||||||||
| - run: npm ci | ||
| - run: cat ormconfig.sample.json | jq 'map(select(.name == "oracle"))' > ormconfig.json | ||
| - run: docker compose up oracle --no-recreate --wait | ||
| - run: sleep 10 |
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.
Might be a bit too much, the user setup script shouldn't require this much time. Will try to check long it takes if possible.
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.
Startup is quite fast for me, so is executing the user setup script. Not sure what's hapenning in GH actions.
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.
If you look at the failing tests, there are some run sucesfully before eventually one fails, so adding a sleep might not make any difference...
Example run from current master: https://github.com/typeorm/typeorm/actions/runs/19611788411/job/56160388241
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.
Ah, our test setup isn't that great. Those tests are running but returning immediately because the current driver is not enabled.
Ideally we should have a system where we can tag a test with e.g. [mysql][mssql] and then run the tests just for one tag, so these tests don't show up.
gioboa
left a comment
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.
💪👍
| steps: | ||
| - uses: actions/checkout@v5 | ||
|
|
||
| - run: docker compose up oracle --detach |
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.
Why do we run docker compose up orcale twice in this job? Here and in 302?
And just from my own curiosity, why don't we use services like with any other db?
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.
--detach starts the container in the background, --no-recreate --wait will attach to the container and wait until the healthcheck is passing
User description
Description of change
This change adds
sleep 10command that adds an extra wait for the containers to be up and running for Oracle DB. Currently Oracle tests (tests-linux (20) / oraclespecifically) sometimes/mostly fail on master branch and PR branches, this should mitigate the problem.I've re-run the
tests-linux (20) / oracleabout 5 times on my fork and it looks the issue is gone.Pull-Request Checklist
masterbranch[ ] This pull request links relevant issues asFixes #00000[ ] There are new or updated unit tests validating the change[ ] Documentation has been updated to reflect this changePR Type
Bug fix
Description
Add 10-second delay after Oracle container startup
Mitigates flaky Oracle test failures on Node 20
Ensures container is fully ready before tests run
Diagram Walkthrough
File Walkthrough
tests-linux.yml
Add sleep delay after Oracle container startup.github/workflows/tests-linux.yml
sleep 10command after Oracle container startup