-
Notifications
You must be signed in to change notification settings - Fork 833
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
fix: Split the CI workflow into ci-test and ci to eliminate redundant work… #2770
Conversation
… and speed up testing feedback
✅ Deploy Preview for karpenter-docs-prod canceled.
|
- uses: shogo82148/actions-goveralls@v1 | ||
if: env.K8S_VERSION == '1.24.x' |
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 restrict this?
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.
Because otherwise it's going to do it as many times (5 times), while this needs to happen onyly once
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.
We're going to need to constantly maintain this whenever we change Kubernetes versions.
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.
We only need to change it if we get rid of 1.24.x
I'll have to figure out how to access the dimensions from here and reference the last one instead of this to avoid that.
ci: toolchain verify licenses vulncheck battletest coverage ## Run all steps used by continuous integration | ||
ci-test: battletest coverage ## Runs tests and submits coverage | ||
|
||
ci-non-test: verify licenses vulncheck ## Runs checks other than 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.
Trying to think of more idiomatic names for this. I'd like to make sure we share as much as possible between karpenter and karpenter-core.
I like this separation, since it enables developers to run ci-test
locally without significant time investment of the license/vuln checks. I think we might be able to collapse battletest
and test
, since I'm not sure it actually takes very much more time
presubmit
Runs codegen, linting, testing, coverage, etc. It's fast
presubmit-slow
Runs license checks, vulnerabilities, slow stuff.
This makes me think that we might actually want to run the slow stuff on postsubmit. These fail so rarely. It would be really nice to dramatically improve our merge times.
That would leave us with
presubmit
Devs run before submission, Runs before CI checks. SLA <5min, ideally 3m?
postsubmit
GH runs after submission, may take longer
Happy to chat offline
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.
Those are good idea, we also don't really need vulnerability scanning right here as we are doing it in another workflow. I'll do them in a follow up PR if you don't mind.
… and speed up testing feedback
Fixes #
Description
release-tag.yml
make ci
to preserve the same dev experience and limit the changes to WorkflowsHow was this change tested?
Does this change impact docs?
Release Note
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.