-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
kfctl#36 Split build and deploy to separate tests #4187
Conversation
Hi @nrchakradhar. Thanks for your PR. I'm waiting for a kubeflow member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. 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. |
/assign jlewi |
@nrchakradhar: GitHub didn't allow me to assign the following users: jweli. Note that only kubeflow members, repo collaborators and people who have commented on this issue/PR can be assigned. Additionally, issues/PRs can only have 10 assignees at the same time. In 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. |
Pro tip make sure reviewers are listed as Assignees otherwise it won't show up in their review dashboard. |
* Once kfctl upgrade is ready we will have to update this test to actually run. * kubeflow#4148 needs to be submitted first. * We will also need to update the test after kubeflow#4187 is merged. That splits kfctl_go_test.py into separate build and deploy steps.
Thanks @nrchakradhar Should we move these files into Then kfctl_go_test.py could import and reuse the functions defined in those files. This way we don't end up duplicating the code and we can make changes in a single location. |
/ok-to-test |
@jlewi Do we want to have kfctl_go_test.py going forward? I thought it was not required. Once the workflow is moved to python, e2e test can have build, deploy as steps and kfctl_go_test.py can be removed. The test semantics will be a DAG of steps of independent functionalities. This way there will be only ONE way of e2e tests and not combined multiple steps in DAG into a single python test. Did not remove the file now in this commit as submit test will fail. When rebasing after #4148 merge, I can delete the file. |
We do want to get rid of kfctl_go_test.py. But @yanniszark is planning on continuing to use it in the Arrikto E2E test #4154. So it will live on for a while. In the meantime the semantics of kfctl are changing (#4040) so we need to update the tests to use the new semantics. So we'd like to be able to have this logic in a single place and not have to update multiple locations. |
@jlewi I made some draft changes. Let me know if this is inline with your expectation. |
Yes this is very much what I had in mind. I might suggest moving the new pytest modules into py/kubeflow/kubeflow/ci as well. The only reason for this is because by convention we always add the py directory to our python path. So this way all the modules are on our python path and we could import them if need be |
/cc @swiftdiaries |
@jlewi I have moved the files as per comment. I am not able to resolve the python paths though. Can you please help. |
It looks like the PYTHONPATH for the step doesn't include kubeflow/kubeflow/py. the PYTHONPATH is
I think you need to change this line
To
|
All (the pull request submitter and all commit authors) CLAs are signed, but one or more commits were authored or co-authored by someone other than the pull request submitter. We need to confirm that all authors are ok with their commits being contributed to this project. Please have them confirm that by leaving a comment that contains only Note to project maintainer: There may be cases where the author cannot leave a comment, or the comment is not properly detected as consent. In those cases, you can manually confirm consent of the commit author(s), and set the ℹ️ Googlers: Go here for more info. |
/retest |
93792de
to
6d88a99
Compare
@jlewi Can you please let me know how can I fix this? Also, I found that its not easy to copy the logs from browser to other textpad/notepad/vim etc. Is there some way to do this? |
/retest |
Moving to ci changing the import path Fixing python path
review changes changing the import path Change in jsonnet Change in e2e_workflow
6d88a99
to
1bfe207
Compare
/retest |
# kubeflow/manifests repository; so we need to change the repo specification | ||
# in the KFDef spec. | ||
# TODO(jlewi): We should also point to a specific commit when triggering | ||
# postsubmits from the kubeflow/manifests repo |
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.
Can we address this comment in this PR?
If not we can come back to it at a later point.
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.
I can include this, but need information on to change to what as I am still learning all the CI stuff that is happening here.
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.
Cool. We can open an issue and address it soon.
/lgtm |
@jlewi @swiftdiaries Presubmit has passed. PTAL. |
/lgtm |
I don't have approve rights, @richardsliu / @kunmingg could you PTAL? |
* We need to write an E2E test for kfctl upgrade (kubeflow/kfctl#35). * Once kfctl upgrade is ready we will have to update this test to actually run. * kubeflow#4148 needs to be submitted first. * We will also need to update the test after kubeflow#4187 is merged. That splits kfctl_go_test.py into separate build and deploy steps.
* kfctl#36 Split build and deploy to separate tests * Move common methods to ci * Split kfctl_go_tests Moving to ci changing the import path Fixing python path * kfctl#36 Split build and deploy to separate tests * Compile might fail. Move common methods to ci * Split kfctl_go_tests review changes changing the import path Change in jsonnet Change in e2e_workflow * Rebase and modify after kubeflow#4040 * Fix test failure
* kfctl#36 Split build and deploy to separate tests * Move common methods to ci * Split kfctl_go_tests Moving to ci changing the import path Fixing python path * kfctl#36 Split build and deploy to separate tests * Compile might fail. Move common methods to ci * Split kfctl_go_tests review changes changing the import path Change in jsonnet Change in e2e_workflow * Rebase and modify after kubeflow#4040 * Fix test failure
For kfctl#36, I have separated build and deploy into separate modules
In kfctl_go_deploy, included an error if kfctl go binary is not found
Once #4148 is merged,
kubeflow/py/kubeflow/kubeflow/ci/kfctl_e2e_workflow.py
Lines 514 to 520 in 18aa073
will be changed to include new step for build which does not need any args at the moment.
Also, after #4154 is merged, some minor changes might be needed.
This change is