feat(ci): add comprehensive Helm integration tests with JobSet dependency fix#2783
feat(ci): add comprehensive Helm integration tests with JobSet dependency fix#2783ombhojane wants to merge 11 commits into
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
Thank you for your first contribution @ombhojane! 🎉 |
81f7fc6 to
6c7a173
Compare
|
Hey @kramaranya |
|
/ok-to-test |
Pull Request Test Coverage Report for Build 18153337284Details
💛 - Coveralls |
|
hey @andreyvelich |
andreyvelich
left a comment
There was a problem hiding this comment.
/ok-to-test
@ombhojane Can you sign your commits please ?
|
/retest |
andreyvelich
left a comment
There was a problem hiding this comment.
Thanks @ombhojane!
I left my initial comments.
|
thanks for detailed review, i'm going thru & resolving this |
b0c7f9f to
a6407b7
Compare
Signed-off-by: ombhojane <ombhojane05@gmail.com>
…tall commands compatible with Debian image (kubeflow#2528) Signed-off-by: Debabrata47 <debabratamohapatra47@gmail.com> Signed-off-by: ombhojane <ombhojane05@gmail.com>
Signed-off-by: ombhojane <ombhojane05@gmail.com>
Signed-off-by: ombhojane <ombhojane05@gmail.com>
Signed-off-by: ombhojane <ombhojane05@gmail.com>
Signed-off-by: ombhojane <ombhojane05@gmail.com>
Signed-off-by: ombhojane <ombhojane05@gmail.com>
Signed-off-by: ombhojane <ombhojane05@gmail.com>
Signed-off-by: ombhojane <ombhojane05@gmail.com>
a68cbfc to
6fa4375
Compare
|
hey @andreyvelich |
andreyvelich
left a comment
There was a problem hiding this comment.
/cc @kubeflow/kubeflow-trainer-team @astefanutti
| # Wait for JobSet to be ready | ||
| kubectl wait --for=condition=ready pod -l app.kubernetes.io/name=jobset --timeout=300s -n jobset-system | ||
|
|
||
| - name: Create test values file for chart testing |
There was a problem hiding this comment.
Can we leverage the e2e-setup-cluster.sh script to deploy Helm Chart ?
I think, the steps are similar, and we should just deploy it with Helm Charts instead of Kustomize manifests.
There was a problem hiding this comment.
I agree with @andreyvelich this should ideally not be duplicated.
There was a problem hiding this comment.
leveraged e2e-setup-cluster-helm.sh
There was a problem hiding this comment.
@ombhojane As I can see, you still build and load images as part of your e2e-setup-cluster-helm.sh script.
I suggest that you just add condition here, to whether you want to deploy Kubeflow Trainer with Kustomize or Helm Charts:
trainer/hack/e2e-setup-cluster.sh
Lines 43 to 54 in 5c02086
In that case, you don't need to maintain separate script just for Helm deployment.
|
@andreyvelich: GitHub didn't allow me to request PR reviews from the following users: kubeflow/kubeflow-trainer-team. Note that only kubeflow members and repo collaborators can review this PR, and authors cannot review their own PRs. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
| # Wait for JobSet to be ready | ||
| kubectl wait --for=condition=ready pod -l app.kubernetes.io/name=jobset --timeout=300s -n jobset-system | ||
|
|
||
| - name: Create test values file for chart testing |
There was a problem hiding this comment.
I agree with @andreyvelich this should ideally not be duplicated.
|
sure, I'll enhance the flow as suggested |
| - name: Setup cluster and deploy with Helm | ||
| run: | | ||
| make test-e2e-setup-cluster-helm K8S_VERSION=1.32.0 | ||
|
|
||
| - name: Run E2E smoke tests | ||
| run: | | ||
| NAMESPACE="kubeflow-system" |
There was a problem hiding this comment.
After you modify the e2e setup script you should be able to just run:
- name: Setup cluster
run: |
make test-e2e-setup-cluster K8S_VERSION=${{ matrix.kubernetes-version }} DEPLOYMENT_METHOD=helm
- name: Run e2e with Go
run: |
make test-e2e || (kubectl logs -n kubeflow-system -l app.kubernetes.io/name=trainer && exit 1)|
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
|
This pull request has been automatically closed because it has not had recent activity. Please comment "/reopen" to reopen it. |

What this PR does / why we need it:
This PR adds comprehensive Helm integration tests to the GitHub Actions workflow to ensure the Kubeflow Trainer Helm chart functions correctly across different environments and configurations.
The implementation includes:
Additionally, this PR fixes a critical issue with the JobSet dependency in
Chart.yamlwhere the OCI registry path was incorrect, preventing successful chart installations.Which issue(s) this PR fixes :
Fixes #2577
Technical Details
Key Changes Made:
oci://registry.k8s.io/jobset/charts/jobsettooci://registry.k8s.io/jobset/chartsct lint-and-install: Addressed review feedback from @andreyvelich to use combined testing approach.github/ct.yamlwith proper timeout and dependency settingsWorkflow Features:
Testing Approach:
This addresses all requirements from issue #2577 and incorporates feedback from the previous PR review process, ensuring the Trainer Helm chart maintains quality and reliability standards.