karmada-io / karmada

Open, Multi-Cloud, Multi-Cluster Kubernetes Orchestration
https://karmada.io
Apache License 2.0
4.12k stars 807 forks source link

[Umbrella] Open component imagePullPolicy setting parameters for karmadactl init and karmada operator #4789

Closed XiShanYongYe-Chang closed 1 week ago

XiShanYongYe-Chang commented 1 month ago

What would you like to be added:

Open component imagePullPolicy setting parameters for karmadactl init and karmada operator.

Why is this needed:

The helm installation method already provides users with the ability to set the component imagePullPolicy parameters:

https://github.com/karmada-io/karmada/blob/c81649a423165bd660a3bf0ee3b1abd13b0f90e3/charts/karmada/values.yaml#L28-L30

https://github.com/karmada-io/karmada/blob/c81649a423165bd660a3bf0ee3b1abd13b0f90e3/charts/karmada/values.yaml#L175

In order to ensure the consistency of different installation methods and users can customize the image pull strategy of the Karmada component, we can also provide imagePullPolicy parameter settings for karmadactl init and karmada operator installation methods.

/help

karmada-bot commented 1 month ago

@XiShanYongYe-Chang: This request has been marked as needing help from a contributor.

Please ensure the request meets the requirements listed here.

If this request no longer meets these requirements, the label can be removed by commenting with the /remove-help command.

In response to [this](https://github.com/karmada-io/karmada/issues/4789): > > >**What would you like to be added**: > >Open component `imagePullPolicy` setting parameters for `karmadactl init` and `karmada operator`. > >- [ ] open component `imagePullPolicy` setting parameters for `karmadactl init`. >- [ ] open component `imagePullPolicy` setting parameters for `karmada operator`. > >**Why is this needed**: > >The helm installation method already provides users with the ability to set the component imagePullPolicy parameters: > >https://github.com/karmada-io/karmada/blob/c81649a423165bd660a3bf0ee3b1abd13b0f90e3/charts/karmada/values.yaml#L28-L30 > >https://github.com/karmada-io/karmada/blob/c81649a423165bd660a3bf0ee3b1abd13b0f90e3/charts/karmada/values.yaml#L175 > >In order to ensure the consistency of different installation methods and users can customize the image pull strategy of the Karmada component, we can also provide `imagePullPolicy` parameter settings for `karmadactl init` and `karmada operator` installation methods. > >/help Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes/test-infra](https://github.com/kubernetes/test-infra/issues/new?title=Prow%20issue:) repository.
seanlaii commented 1 week ago

Hi @XiShanYongYe-Chang , is there anyone working on the second task? I'm interested in working on it if needed.

XiShanYongYe-Chang commented 1 week ago

Hi @XiShanYongYe-Chang , is there anyone working on the second task? I'm interested in working on it if needed.

Thanks~ @seanlaii, I will assign it to you!

seanlaii commented 1 week ago

I would like to clarify the requirement regarding the level of control for the ImagePullPolicy in Karmada Operator. Specifically, should we provide control at the resource level or the component level in the Karmada custom resource?

Currently, the Karmada Operator installs Karmada through a custom resource, Karmada. To address this requirement, I propose adding an ImagePullPolicy field to the CommonSettings field in Karmada custom resource. This approach would enable users to define individual pull policies for each component. Could you please confirm if this approach aligns with the expected behavior? I appreciate your guidance on ensuring a proper implementation that meets the project's standards and requirements. Thanks for your time!

XiShanYongYe-Chang commented 1 week ago

This approach would enable users to define individual pull policies for each component.

Thanks a lot. I was expecting something like this.

XiShanYongYe-Chang commented 1 week ago

/assign @XiShanYongYe-Chang @seanlaii

XiShanYongYe-Chang commented 1 week ago

Thanks @seanlaii All task pr has been merged. /close

karmada-bot commented 1 week ago

@XiShanYongYe-Chang: Closing this issue.

In response to [this](https://github.com/karmada-io/karmada/issues/4789#issuecomment-2076498644): >Thanks @seanlaii >All task pr has been merged. >/close Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes/test-infra](https://github.com/kubernetes/test-infra/issues/new?title=Prow%20issue:) repository.
seanlaii commented 1 week ago

Thank you for your time! Btw, it is worth noting that we might need to upgrade the controller-gen version to 0.14.0 when we upgrade Go version to v1.22 due to this issue. During my local development using Go v1.22, I encountered the same problem. However, after downgrading to Go v1.21.8 or upgrading to controller-gen v0.14.0, everything functioned as expected.

XiShanYongYe-Chang commented 1 week ago

Thanks for the reminder. If it's convenient, you can raise a new issue to track this. We need to do this when we upgrade the go version to 1.22.

seanlaii commented 1 week ago

Sure! I created it here. Please feel free to inform me if I need to add any tags or labels. I am new to creating issues, so your guidance would be greatly appreciated. Thank you!