-
Notifications
You must be signed in to change notification settings - Fork 53
MLE-24733 Trying out new test deployer #1017
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
|
Copyright Validation Results ⏭️ Skipped (Excluded) Files
✅ Valid Files
✅ All files have valid copyright headers! |
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.
Pull Request Overview
This PR introduces a new test deployer approach by restructuring test setup and deployment processes in the Jenkins pipeline. The changes replace Node.js-based setup scripts with Gradle-based deployment commands and add reliability improvements.
Key Changes:
- Added a retry mechanism with a sleep delay for the
mlWaitTillReadycommand to improve test reliability - Replaced Node.js setup scripts with Gradle deployment tasks in the E2E test workflow
- Reorganized deployment steps to use a new
test-complete-app-mlDeploydirectory
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| ./gradlew -i mlWaitTillReady | ||
| sleep 3 | ||
| ./gradlew -i mlWaitTillReady |
Copilot
AI
Oct 27, 2025
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.
The hardcoded sleep duration of 3 seconds is a magic number without explanation. Consider adding a comment explaining why this delay is needed, or better yet, replace the fixed sleep with a configurable retry mechanism with exponential backoff to handle varying server startup times more reliably.
| ./gradlew -i mlWaitTillReady | |
| sleep 3 | |
| ./gradlew -i mlWaitTillReady | |
| # Retry mlWaitTillReady with exponential backoff up to 5 times | |
| max_attempts=5 | |
| attempt=1 | |
| delay=2 | |
| until ./gradlew -i mlWaitTillReady; do | |
| if [ $attempt -ge $max_attempts ]; then | |
| echo "mlWaitTillReady failed after $max_attempts attempts." | |
| exit 1 | |
| fi | |
| echo "mlWaitTillReady not ready, retrying in $delay seconds (attempt $attempt/$max_attempts)..." | |
| sleep $delay | |
| attempt=$((attempt+1)) | |
| delay=$((delay*2)) | |
| done |
| cd test-complete-app-mlDeploy | ||
| ./gradlew -i mlDeploy | ||
| cd test-complete-app | ||
| ./gradlew -i mlDeploy |
Copilot
AI
Oct 27, 2025
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.
The -g $PWD flag was removed from the gradlew command. If this flag was previously used to set a custom Gradle user home directory for isolation purposes in CI/CD, removing it may cause unintended side effects such as cache collisions or permission issues. Verify that removing this flag is intentional and does not impact build isolation.
c7aae15 to
977f9c6
Compare
Fixing a couple tests to not write schemas to a modules database.
977f9c6 to
02a20a3
Compare
No description provided.