Skip to content
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

Add wrapper for ProvisioningRequestConfig to util/testing package #3560

Open
wants to merge 36 commits into
base: main
Choose a base branch
from

Conversation

TusharMohapatra07
Copy link
Contributor

What type of PR is this?

/kind cleanup

What this PR does / why we need it:

Improve code quality

Which issue(s) this PR fixes:

Fixes #3472

NONE

@k8s-ci-robot k8s-ci-robot added release-note-none Denotes a PR that doesn't merit a release note. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Nov 16, 2024
@k8s-ci-robot k8s-ci-robot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Nov 16, 2024
@k8s-ci-robot
Copy link
Contributor

Hi @TusharMohapatra07. Thanks for your PR.

I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

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-sigs/prow repository.

@k8s-ci-robot k8s-ci-robot added the size/S Denotes a PR that changes 10-29 lines, ignoring generated files. label Nov 16, 2024
Copy link

netlify bot commented Nov 16, 2024

Deploy Preview for kubernetes-sigs-kueue canceled.

Name Link
🔨 Latest commit b597749
🔍 Latest deploy log https://app.netlify.com/sites/kubernetes-sigs-kueue/deploys/6749668c0f36e800084e2e74

@TusharMohapatra07
Copy link
Contributor Author

@PBundyra @mimowo What other operations(methods) are expected on the wrapper??

@mbobrovskyi
Copy link
Contributor

What is the purpose of this wrapper if it is never used?

@TusharMohapatra07
Copy link
Contributor Author

@mbobrovskyi The issue says to create a wrapper for ProvisioningRequestConfig.

@mbobrovskyi
Copy link
Contributor

@mbobrovskyi The issue says to create a wrapper for ProvisioningRequestConfig.

I agree the issue description is unclear. However, we need to not only create the wrapper but also use it in the code.

@PBundyra
Copy link
Contributor

@PBundyra @mimowo What other operations(methods) are expected on the wrapper??

We need methods to set:

  • .spec.provisioningClassName
  • .spec.parameters
  • .spec.managedResources
  • .spec.retryStrategy
  • .spec.retryStrategy.backoffLimitCount
  • .spec.retryStrategy.backoffBaseSeconds
  • .spec.retryStrategy.backoffMaxSeconds

And to create an actual object from a wrapper.

The point of introducing the wrapper would be indeed to use as @mbobrovskyi mentioned. Sorry for the unclear description. This change should be reflected in files:

  • pkg/controller/admissionchecks/provisioning/admissioncheck_reconciler_test.go
  • pkg/controller/admissionchecks/provisioning/controller_test.go
  • pkg/util/admissioncheck/admissioncheck_test.go
  • test/integration/controller/admissionchecks/provisioning/provisioning_test.go

@k8s-ci-robot k8s-ci-robot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels Nov 26, 2024
@TusharMohapatra07
Copy link
Contributor Author

@mbobrovskyi @PBundyra Sorry for being late. I've used the wrapper in controller_test.go. I shall proceed with further using the wrapper post approval.

@mbobrovskyi
Copy link
Contributor

/ok-to-test

@k8s-ci-robot k8s-ci-robot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Nov 26, 2024
@mbobrovskyi
Copy link
Contributor

@TusharMohapatra07 please apply for other files.

@PBundyra
Copy link
Contributor

Please add methods for fields:

.spec.managedResources
.spec.retryStrategy.backoffLimitCount
.spec.retryStrategy.backoffBaseSeconds
.spec.retryStrategy.backoffMaxSeconds

@TusharMohapatra07
Copy link
Contributor Author

@mbobrovskyi @PBundyra Is this what's intended ?

@mbobrovskyi
Copy link
Contributor

It should work.

[]kueue.ProvisioningRequestConfig{*baseConfigWithRetryStrategy.Clone().RetryLimit(1).BaseBackoff(0).Obj()},

Yaa that's what, i need to dereference it

The question not about references. But use DeepCopy() only if it's really need.

@TusharMohapatra07
Copy link
Contributor Author

@mbobrovskyi just to confirm, i don't have to use Obj() here right ?
image

@PBundyra
Copy link
Contributor

@mbobrovskyi just to confirm, i don't have to use Obj() here right ? image

You should Clone() the base wrapper and then use Obj() to create the actual underlying object from the wrapper

@TusharMohapatra07
Copy link
Contributor Author

I've used the wrapper in admissioncheck_reconciler_test.go, admissioncheck_test.go(there was nothing much to do in these two) and provisioning_test.go. Please review @mbobrovskyi

@mbobrovskyi
Copy link
Contributor

/test all

Copy link
Contributor

@mbobrovskyi mbobrovskyi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

pkg/util/admissioncheck/admissioncheck_test.go Outdated Show resolved Hide resolved
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: mbobrovskyi, TusharMohapatra07
Once this PR has been reviewed and has the lgtm label, please assign kerthcet, trasc for approval. For more information see the Kubernetes Code Review Process.

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 /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@mbobrovskyi
Copy link
Contributor

/lgtm
Awesome! Thank you so much!

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Nov 29, 2024
@k8s-ci-robot
Copy link
Contributor

LGTM label has been added.

Git tree hash: 278ad740d7663cea89a8e17b0082eb6757fe3e2e

@mbobrovskyi
Copy link
Contributor

mbobrovskyi commented Nov 29, 2024

Please also open the PR.

@TusharMohapatra07 TusharMohapatra07 marked this pull request as ready for review November 29, 2024 07:04
@k8s-ci-robot k8s-ci-robot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Nov 29, 2024
@TusharMohapatra07
Copy link
Contributor Author

@mbobrovskyi done

@mbobrovskyi
Copy link
Contributor

/cc @mimowo

@PBundyra
Copy link
Contributor

LGTM from me as well, good job @TusharMohapatra07

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. lgtm "Looks good to me", indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. release-note-none Denotes a PR that doesn't merit a release note. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add wrapper for ProvisioningRequestConfig to util/testing package
4 participants