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

Adds DNSControllerSpec and WatchIngress flag #2504

Merged
merged 7 commits into from
Aug 30, 2017
Merged

Adds DNSControllerSpec and WatchIngress flag #2504

merged 7 commits into from
Aug 30, 2017

Conversation

geojaz
Copy link
Member

@geojaz geojaz commented May 5, 2017

This PR is in reference to #2496, #2468 and the issues referenced in there relating to use of the watch-ingress flag.

This PR attempts to rectify this situation and gives users who want it, the option to turn on watch-ingress without forcing it on them. Also spits out a warning to the logs about potential side effects.

Includes notes in docs/cluster_spec.md to explain.


This change is Reviewable

@geojaz
Copy link
Member Author

geojaz commented May 8, 2017

@justinsb Minor API changes for a good cause here :) Would you pleas take a look?

@justinsb
Copy link
Member

I like this, but can we just revert the change so we can get 1.6.0 out?

@justinsb
Copy link
Member

I'm also wondering if we adopt external-dns for ingress

@geojaz
Copy link
Member Author

geojaz commented May 11, 2017

Yes please, let's get 1.6 out

@DerekV
Copy link
Contributor

DerekV commented Jun 16, 2017

Any plans to include this in the next release?

@chrislovecnm
Copy link
Contributor

@justinsb we good to get this in?

@chrislovecnm
Copy link
Contributor

@geojaz need a rebase

@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Jun 21, 2017
@chrislovecnm
Copy link
Contributor

@geojaz status on this?

@geojaz
Copy link
Member Author

geojaz commented Jun 22, 2017

@chrislovecnm I'll try to get this done tonight

@geojaz
Copy link
Member Author

geojaz commented Jul 1, 2017

@chrislovecnm :)

func (tf *TemplateFunctions) DnsControllerArgv() ([]string, error) {
var argv []string

argv = append(argv, "/usr/bin/dns-controller")

if tf.cluster.Spec.DNSController != nil {
Copy link
Member

Choose a reason for hiding this comment

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

FYI, I tend to do this:

dnsController := tf.cluster.Spec.DNSController
if dnsController == nil {
  dnsController = &DNSControllerSpec{}
}
...

With one option it's a wash, with a bunch it makes things simpler :-)

@justinsb
Copy link
Member

justinsb commented Jul 1, 2017

This LGTM. I'm not sure if we should call it dnsController or externalDns though... I'll leave that up to you @geojaz

My thoughts:

  • eventually kops will use external-dns
  • external-dns makes it clearer that this is not kube-internal DNS

But:

  • it doesn't really matter anyway; we can change in future and both are reasonably clear :-)

@justinsb
Copy link
Member

justinsb commented Jul 1, 2017

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 1, 2017
@justinsb justinsb added this to the 1.7.0 milestone Jul 1, 2017
@geojaz
Copy link
Member Author

geojaz commented Jul 3, 2017

I think we should call it externalDns with some language on the docs/commenting in the code to explain that this is also the config for dnsController. I'll clean this up and let you take one more look at it before merge. Thanks for the ideas :)

watchIngress: true
```

Default kops behavior is false. `watchIngress: true` uses the default _dns-controller_ behavior which is to watch the ingress controller for changes. Set this option at risk of interrupting Service updates in some cases.
Copy link
Contributor

Choose a reason for hiding this comment

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

"Set this option at risk of interrupting Service updates in some cases.".
It would be nice to add more info about when this would/could happen.

@geojaz
Copy link
Member Author

geojaz commented Jul 4, 2017

Will squash commits as make sense. I moved the config from DNSControllerSpec to ExternalDNSConfig and updated the docs and such. I think next step is to refactor to combine the DNSControllerArgv and ExternalDNSArgv in template_functions... but maybe not crucial for this submission.

@chrislovecnm
Copy link
Contributor

Need a rebase and e2e failed.

@k8s-github-robot
Copy link

@geojaz PR needs rebase

@k8s-github-robot k8s-github-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jul 20, 2017
@chrislovecnm
Copy link
Contributor

/lgtm cancel

@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 20, 2017
@chrislovecnm
Copy link
Contributor

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 20, 2017
@k8s-github-robot k8s-github-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 26, 2017
@DerekV
Copy link
Contributor

DerekV commented Aug 24, 2017

Is there some way to move this forward if it just needs a rebase?

@chrislovecnm
Copy link
Contributor

Paging @geojaz :)

@k8s-ci-robot k8s-ci-robot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Aug 29, 2017
@k8s-github-robot
Copy link

/lgtm cancel //PR changed after LGTM, removing LGTM. @chrislovecnm @geojaz @justinsb

@k8s-github-robot k8s-github-robot removed lgtm "Looks good to me", indicates that a PR is ready to be merged. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. labels Aug 29, 2017
@kubernetes kubernetes deleted a comment from k8s-ci-robot Aug 29, 2017
Copy link
Contributor

@chrislovecnm chrislovecnm left a comment

Choose a reason for hiding this comment

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

Thanks

@chrislovecnm
Copy link
Contributor

/lgtm

@DerekV will be in our next release, let us know if you have any questions about using it before the release

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Aug 30, 2017
@k8s-github-robot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: chrislovecnm, geojaz, justinsb

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these OWNERS Files:
  • OWNERS [chrislovecnm,justinsb]

You can indicate your approval by writing /approve in a comment
You can cancel your approval by writing /approve cancel in a comment

@k8s-github-robot
Copy link

/test all [submit-queue is verifying that this PR is safe to merge]

@k8s-github-robot
Copy link

Automatic merge from submit-queue

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. 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.

None yet

7 participants