-
Notifications
You must be signed in to change notification settings - Fork 65
feat: Migrate shared test/quality related workflows from kubeflow/kubeflow to notebooks-v1 branch #612
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
base: notebooks-v1
Are you sure you want to change the base?
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.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
fd4c6f6
to
f2ed684
Compare
f2ed684
to
cca9436
Compare
/ok-to-test |
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.
Thanks for opening this up...
I have a few requests here for optimizations here I am happy to discuss with you... but none of them are particularly "critical"
Bare minimum change would be to simply include main
as a branch target for sake of consistency.
- v*-branch | ||
- notebooks-v1 |
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.
Just for consistency with other workflows - can you include main
in the branches:
argument
- I wholly realize/appreciate this is essentially a no-op!
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.
Hey Andy, thank you for the initial review.
I agree that we need to keep the consistency here, but maybe we need to consider removing the main branch from the other PRs? Do we have a plan to use this branch? It looks like after the split of notebooks-v1 and notebooks-v2 branches, the main branch can be "deleted"
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.
@thesuperzapper had expressed to leave this in for now... so I am honoring that preference...
eventually something will move to main
branch... so this gives us freedom to easily in the future decide to move notebooks-v1
or notebooks-v2
and not require changes to workflow if main
already included.
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.
Thank you for the information. I will make sure to add it.
@@ -0,0 +1,53 @@ | |||
name: Common Frontend Tests |
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.
While I have confirmed this PR does successfully migrate the common_frontend_tests.yaml
appropriately - I take issue with the original state of the workflow 😈
Please consider this example commit I made while verifying your contribution:
There are a few things going on here that I feel might warrant inclusion:
env.FRONTEND_DIR
to avoid having to hardcode this path in multiple placesdefaults.run.working-directory
to avoid having to explicitlycd
into the directory in eachrun:
blocknpm ci
(instead ofnpm i
) for a more deterministic build- also only run it once in
frontend-format-lint-check
- also only run it once in
Another change included that I feel less sure about is the cache
changes to Setup Node
steps in each job..
- The code does appear to work - but I wasn't seeing that much of a speed increase
- Given
kubeflow/notebooks
has codebases acrossnotebooks-v1
andnotebooks-v2
branches - each with multiple components - as well as multi-arch support... I worry the 10GB cache limit per repo in GitHub would result in a lot of cache misses - kinda undermining this change- logging output claimed the cache "just" for common lib was 96MB.. which seems insanely large - but hey, Angular gonna Angular 🤷♂️
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 agree with you on those changes, thank you for raising them.
Regarding the cache, I ran a quick comparison on the common lib workflow with and without the npm cache. The results showed only about a ~9s improvement on the format/lint job, while the unit test job actually ran ~4s slower (maybe due to cache overhead).
Given that, plus your point about multiple branches/components and the 10GB repo-wide cache limit, I agree that caching here likely won’t give us consistent wins and could end up causing frequent cache misses.
cb86e19
to
61e6a46
Compare
…to notebooks-v1 branch Signed-off-by: Liav Weiss (EXT-Nokia) <liav.weiss.ext@nokia.com>
61e6a46
to
20eaf56
Compare
@andyatmiami, pr is ready for a final review. |
feat: migrate shared test/quality related workflows from kubeflow/kubeflow to notebooks-v1 branch
Enables python_lint.yaml and common_frontend_tests.yaml tests to run in kubeflow/notebooks repository.
I tested these tests with a small modification in the relevant paths (I have already reverted these changes).

Solves issue: #593