-
Notifications
You must be signed in to change notification settings - Fork 16.5k
[stable/etcd-operator] Add cluster.restore, cluster.pod, nodeSelector & update #1200
[stable/etcd-operator] Add cluster.restore, cluster.pod, nodeSelector & update #1200
Conversation
|
Hi @mikesplain. Thanks for your PR. I'm waiting for a kubernetes member to verify that this patch is reasonable to test. If it is, they should reply with DetailsInstructions 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/test-infra repository. I understand the commands that are listed here. |
09ae305 to
8dd6e79
Compare
|
cc @chancez Thoughts on this? |
|
@mikesplain Can you please share the reference of this being supported upstream in the etcd cluster definition? |
|
I'm not sure about this. Why not just add the options that the operator supports via the TPR directly into the template? |
|
Yeah that's what I would suggest too. Although I don't see any reference in the upstream example that we aren't yet covering |
|
@chancez @lachie83 There are a few examples here, as above. Currently I don't mind switching it to add |
|
@lachie83 it should basically cover all things in this struct: https://github.com/coreos/etcd-operator/blob/master/pkg/spec/cluster.go#L66 which in the example given, pod affinity is one thing to support, among others. |
|
Thanks @mikesplain. Let me review and get back to you. |
stable/etcd-operator/values.yaml
Outdated
| storageType: PersistentVolume | ||
| pv: | ||
| volumeSizeInMB: 512 | ||
| extraArgs: {} |
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.
Can you put reference to the upstream link with some examples and also add some commented out examples here?
|
Perfect thanks @chancez |
|
And I'm still of the opinion that I'd rather see the helm chart explicitly enumerate available options rather than using the generic extraArgs, personally. |
|
I tend to agree with @chancez . Can you scope that out in this PR? |
|
@mikesplain I personally think that that's best handled by forking the chart. I dislike trying to make charts overly extensible, because it means it can be difficult to handle upgrades. If a user specifies an option in extraArgs because it's added to the operator, then we add that new option to the template, then it will be specified twice. This is bad for TPRs in particular because the schema isn't validated on submission, so the upgrade will succeed, but the TPR will be broken most likely. |
|
I'm going to stand behind @chancez on this one. Best way forward is to either fork and implement, or implement specific key vals. How would you like to proceed @mikesplain |
|
Alrighty, I'll modify this to just be those values then. |
|
Thanks @mikesplain . Appreciate your understanding |
|
Absolutely, you guys know this stuff much better than I, I'm simply trying to help others work around road blocks I've come up against frequently as of late. I am curious though, what's the intended path for forking @lachie83 @chancez? Background: We use this chart as a dependency for one of our applications. When a developer finds a chart they want to use is missing a feature they need, they fork it, modify it and PR it back upstream. That's super easy, but the problem comes when you want to use the fork temporarily until the PR is merged, etc. Since dependency charts have to either be in the charts directory or in a chart repository as a package (based on my understanding), it requires forkers to setup a bit of other infrastructure to use (s3 or gsutil). I've setup https://github.com/technosophos/helm-plugins for us against our fork of this repo but it's kind of a hack... I was wondering if you have a suggested or best practice for forkers to utilize their forks without having to duplicate the merge and release process here? I appreciate your advice while I update the PR. |
|
If I have to fork, I just change my dependency to reference the chart on my local file system using the |
8dd6e79 to
d4844d9
Compare
|
/ok-to-test |
|
Requires a chart version bump. @viglesiasce @lachie83 Is this good to go? |
|
LGTM. Please bump the chart version |
|
Sorry for the delay, version bumped @lachie83 @unguiculus |
|
@mikesplain we need to bump again. The rebase nullified your change. |
|
@lachie83 Ugh, sorry about that. Had a bad git day yesterday.... Fixed now. |
|
LGTM |
* upstream/master: (272 commits) [incubator/redis-cache] helm#1785 namespace defined templates with chart name (helm#1840) [incubator/etcd] helm#1785 namespace defined templates with chart name (helm#1835) Correct Uninstall Instructions (helm#1831) [incubator/patroni] helm#1785 namespace defined templates with chart name (helm#1832) [incubator/kube-registry-proxy] helm#1785 namespace defined templates with chart name (helm#1833) [incubator/docker-registry] helm#1785 namespace defined templates with chart name (helm#1836) [incubator/check-mk] helm#1785 namespace defined templates with chart name (helm#1837) [incubator/tensorflow-inception] helm#1785 namespace defined templates with chart name (helm#1838) [incubator/istio] helm#1785 namespace defined templates with chart name (helm#1839) [stable/etcd-operator] Add cluster.restore, cluster.pod, nodeSelector & update (helm#1200) Spelling and Whitespace Corrections (helm#1853) Added nodeselector and tolerations support for fluent-bit (helm#1846) [stable/traefik] Bump Traefik version to 1.3.6 (helm#1845) [stable/mediawiki] Release 0.4.16 (helm#1830) [stable/kube2iam] Add ability to configure node tolerations (helm#1829) Use latest kube2iam (helm#1825) Upgrade nginx-ingress defaultbackend image (helm#1791) [stable/weave-cloud] sync with upstream (helm#1804) [stable/fluent-bit] release 0.1.6 (Fluent Bit 0.11.17) (helm#1813) [stable/joomla] Release 0.4.15 (helm#1805) ...
Added cluster.restore, cluster.pod, and nodeSelctors to both the etcd-operator pod and etcd cluster pods.
I've also updated the default version of the operator and etcd.