Skip to content
This repository has been archived by the owner on Feb 22, 2022. It is now read-only.

[NEW] nginx-ingress #399

Merged
merged 18 commits into from
Feb 23, 2017
Merged

[NEW] nginx-ingress #399

merged 18 commits into from
Feb 23, 2017

Conversation

mgoodness
Copy link
Contributor

This is a stand-alone chart for the nginx ingress controller that, along with the kube-lego chart (#397), replaces nginx-lego. As mentioned and (briefly) discussed in #385.

@jackzampolin

@k8s-ci-robot
Copy link
Contributor

Hi @mgoodness. 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 @k8s-bot 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.

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/test-infra repository. I understand the commands that are listed here.

@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Jan 14, 2017
@jackzampolin
Copy link
Contributor

@mgoodness This looks great! I'd be happy to stay on as the maintainer! 😉 It's much better as two charts. I'll pull this down and give it a test.

@viglesiasce
Copy link
Contributor

Tested this over the weekend without any issues.

Will wait for @jackzampolin to give the LGTM

@bacongobbler
Copy link
Member

ping @jackzampolin, does this have your LGTM?

@jackzampolin
Copy link
Contributor

@bacongobbler Got to this today. LGTM. Sorry for the delay there.

@jackzampolin jackzampolin mentioned this pull request Jan 30, 2017
@prydonius prydonius added lgtm Indicates that a PR is ready to be merged. and removed awaiting review labels Jan 30, 2017
@prydonius
Copy link
Member

This is the first time we're changing the name/deprecating a chart, since nginx-lego will stay in the repo, is there something we can do to let people know it's deprecated? e.g. we could push a final version that explains it's moved to nginx-ingress in the NOTES.txt?

@jackzampolin
Copy link
Contributor

@prydonius I don't know how many users it had. In this particular case there was an issue (my b) with the other chart that prevented it from deploying successfully.

It would be nice to do in the future but I think it might be overkill for this particular instance.

@jason-riddle
Copy link

jason-riddle commented Feb 1, 2017

I ran into a small hiccup in regards to the instructions.

export NODE_PORT=$(kubectl --namespace default get services -o jsonpath="{.spec.ports[0].nodePort}" silly-aardvark-nginx-ingress-controller)

export NODE_IP=$(kubectl --namespace default get nodes -o jsonpath="{.items[0].status.addresses[0].address}")

echo "Visit http://$NODE_IP:$NODE_PORT to access your application."
```
  services:
    - name: controller
      # annotations:
      type: NodePort
```

~~So after I created my ingress, I queried it and it appear to has the correct external facing ip.~~

Update below.

@jason-riddle
Copy link

Update: I mispoke. The problem for me was

kubectl --namespace default get nodes -o jsonpath="{.items[0].status.addresses[0].address}"

should be

kubectl --namespace default get nodes -o jsonpath="{.items[0].status.addresses[1].address}"

so

status.addresses[1]
# instead of status.addresses[0]

@prydonius
Copy link
Member

@jason-riddle it appears that a lot of charts use this in their NOTES, can you create a separate issue for it?

@jason-riddle
Copy link

sure

@munnerz
Copy link
Collaborator

munnerz commented Feb 3, 2017

Hey @mgoodness - I've just opened #540, and then gone on to spot this PR :)

You seem to have put more into documenting so think it's best we stick with your PR, but may I request you add support for TCP & UDP configmaps into yours too? You can see an example of how I've done it in the above linked PR. I'm happy to do it myself, but will need to wait until after this has merged if so!

@munnerz munnerz mentioned this pull request Feb 3, 2017
@viglesiasce viglesiasce modified the milestone: Milestone 1 Feb 3, 2017
@viglesiasce
Copy link
Contributor

@k8s-bot e2e test this

@@ -0,0 +1,29 @@
{{- $root := . -}}
{{- range .Values.controller.services }}
---
Copy link
Contributor

Choose a reason for hiding this comment

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

Tests are failing because of this. Do we have to loop in this file? When would I have multiple? Can we start with this hardcoded to 1 service?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

My specific use-case is to have the same nginx-ingress controllers exposed via two different ELBs (one internet-facing and one VPC-internal). But now that I think about it, that shouldn't be strictly necessary. I'll play with it over the weekend.

@viglesiasce viglesiasce added changes needed and removed lgtm Indicates that a PR is ready to be merged. labels Feb 3, 2017
@mgoodness
Copy link
Contributor Author

After further discussion with @prydonius, we've decided not to delete nginx-lego as part of this PR. Instead, I'll create another in which the README and NOTES.txt make it clear that it's been deprecated. There's also work planned in the Helm project to support/enforce deprecation.

name: nginx-ingress
version: 0.3.0
description: An nginx Ingress controller that uses ConfigMap to store the nginx configuration.
keywords:
Copy link
Member

Choose a reason for hiding this comment

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

`controller.stats.service.externalIPs` | controller service stats external IP addresses | `[]`
`controller.stats.service.loadBalancerIP` | IP address to assign to load balancer (if supported) | `""`
`controller.stats.service.loadBalancerSourceRanges` | list of IP CIDRs allowed access to load balancer (if supported) | `[]`
`controller.service.type` | type of controller stats service to create | `ClusterIP`
Copy link
Member

Choose a reason for hiding this comment

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

should this be controller.stats.service.type?

`defaultBackend.service.externalIPs` | default backend service external IP addresses | `[]`
`defaultBackend.service.loadBalancerIP` | IP address to assign to load balancer (if supported) | `""`
`defaultBackend.service.loadBalancerSourceRanges` | list of IP CIDRs allowed access to load balancer (if supported) | `[]`
`controller.service.type` | type of default backend service to create | `ClusterIP`
Copy link
Member

Choose a reason for hiding this comment

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

defaultBackend.service.type?

@prydonius
Copy link
Member

@mgoodness just some small fixes in the README, otherwise this lgtm!

@prydonius prydonius added code reviewed lgtm Indicates that a PR is ready to be merged. and removed changes needed labels Feb 23, 2017
@mgoodness mgoodness merged commit eae290a into helm:master Feb 23, 2017
@mgoodness mgoodness deleted the nginx-ingress branch February 23, 2017 02:25
yanns pushed a commit to yanns/charts that referenced this pull request Jul 28, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. code reviewed lgtm Indicates that a PR is ready to be merged. UX reviewed
Projects
None yet
Development

Successfully merging this pull request may close these issues.