-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
generate DRA job configs from a Jinja template #34010
generate DRA job configs from a Jinja template #34010
Conversation
Skipping CI for Draft Pull Request. |
7c3a83c
to
2f75bbd
Compare
d030275
to
c5999e8
Compare
config/jobs/kubernetes/sig-node/dynamic-resource-allocation-canary.ini
Outdated
Show resolved
Hide resolved
config/jobs/kubernetes/sig-node/dynamic-resource-allocation-canary.ini
Outdated
Show resolved
Hide resolved
3259e4d
to
499379c
Compare
499379c
to
2e1e253
Compare
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.
Looks very promising.
How to solve indention was my biggest concern when thinking about how to use Jinja. I am not sure whether this is addressed here (need to check test results).
config/jobs/kubernetes/sig-node/dynamic-resource-allocation.conf
Outdated
Show resolved
Hide resolved
config/jobs/kubernetes/sig-node/dynamic-resource-allocation.conf
Outdated
Show resolved
Hide resolved
config/jobs/kubernetes/sig-node/dynamic-resource-allocation.jinja
Outdated
Show resolved
Hide resolved
config/jobs/kubernetes/sig-node/dynamic-resource-allocation.jinja
Outdated
Show resolved
Hide resolved
config/jobs/kubernetes/sig-node/dynamic-resource-allocation.jinja
Outdated
Show resolved
Hide resolved
@pohly @kannon92 @SergeyKanzhelev @haircommander
Thank you. After fixing review comments, I'm going to remove -pull and -ci yamls from this PR, so we can only test -canary. I personally like it. Using it would allow us to
WDYT guys? |
4234630
to
28eda1b
Compare
b1ba970
to
17e5c8a
Compare
@pohly good news - all new -canary jobs succeeded for my test PR. I triggered -pull jobs to check if both run the same set of test cases. |
17e5c8a
to
985c885
Compare
985c885
to
bdac7d1
Compare
@pohly I've also fixed inconsistent naming of the crio jobs: |
Co-authored-by: Patrick Ohly <[email protected]>
Co-authored-by: Patrick Ohly <[email protected]>
Co-authored-by: Patrick Ohly <[email protected]>
bdac7d1
to
15ae942
Compare
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.
/lgtm
/assign @dims
Can you perhaps have a look and approve? You have some context on the usage of Jinja for kops.
@dims I've presented this solution on SIG-Node CI meeting yesterday and received a generally positive feedback. There are certain concerns that presented solution may work for smaller scope of different jobs and can become harder to maintain when amount of jobs and their variety increases. However, we can't agree or disagree with this without trying, which is what I proposed - to try it out with DRA jobs and then gradually expand to the rest of SIG-Node jobs and people agreed. |
@bart0sh thanks for doing this! it will definitely help us going forward. /approve |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: bart0sh, dims The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/hold cancel |
@bart0sh: Updated the
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-sigs/prow repository. |
@@ -145,7 +137,7 @@ periodics: | |||
- '--node-test-args=--feature-gates=DynamicResourceAllocation=true --service-feature-gates=DynamicResourceAllocation=true --runtime-config=api/beta=true --container-runtime-endpoint=unix:///var/run/crio/crio.sock --container-runtime-process-name=/usr/local/bin/crio --container-runtime-pid-file= --kubelet-flags="--cgroup-driver=systemd --cgroups-per-qos=true --cgroup-root=/ --runtime-cgroups=/system.slice/crio.service --kubelet-cgroups=/system.slice/kubelet.service" --extra-log="{\"name\": \"crio.log\", \"journalctl\": [\"-u\", \"crio\"]}"' | |||
- --node-tests=true | |||
- --provider=gce | |||
- '--test_args=--timeout=1h --label-filter="Feature: containsAny DynamicResourceAllocation && Feature: isSubsetOf { Beta, DynamicResourceAllocation } && !Flaky"' | |||
- '--test_args=--timeout=1h --label-filter="Feature: containsAny DynamicResourceAllocation && Feature: isSubsetOf { Beta, DynamicResourceAllocation } && !Flaky && !Slow"' |
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.
This seemed okay, but actually was an intentional difference between periodic and presubmit: in a periodic job it's okay to run longer, but presubmits should be fast.
This is relevant for example for kubernetes/kubernetes#129543 because raising the limit potentially affects a slow test.
=> #34113
👋🏻 from the Kops side, I've been following along to see how you end up integrating the job generation scripts in to CI. I'd like to do the same with kops' build_jobs.py. Do you all have a preference on if/how I integrate our scripts? I was thinking of adding new run-in-python-container.sh executions to I can also hold off until after you're confident you dont need to revert. |
@rifelpet The way you've proposed looks good to me. You can modify the scripts. All DRA generated jobs are "green" now. |
/cc @pohly @kannon92 @SergeyKanzhelev @haircommander