Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
Ingress shim fixes
**What this PR does / why we need it**:
Fixes ingress-shim image name in helm chart
Allow specifying extraArgs to ingress-shim in helm chart
**Release note**:
```release-note
NONE
```
/assign
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
Add ingress-shim controller to create Certificates based on annotations on ingress resources
**What this PR does / why we need it**:
Adds a new controller, ingress-shim, that will automatically create Certificate resources for ingress resources with annotations on them.
By setting defaults on the ingress-shim CLI, it's possible to re-implement the `kubernetes.io/tls-acme` behavior of kube-lego.
There also needs to be some documentation written about this, as well as a user guide. This can be our migration story for users coming from kube-lego as well. It'd be interesting to know how easily it'd be to support a seamless migration from [kube-cert-manager](https://github.com/PalmStoneGames/kube-cert-manager) through this tool too.
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
Fixes#19
**Special notes for your reviewer**:
This includes unit tests for sync.go in the new controller, as well as a basic e2e test that ensures an ACME certificate is obtained correctly when an annotation is set on an ingress.
**Release note**:
```release-note
Add ingress-shim controller to automatically create Certificate resources based on annotations on ingresses. This allows for easy creation of Certificate resources when using ingress.
```
Slightly related to #97
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
Update to go 1.9
1.10 isn't too far off, at which point 1.8 will no longer receive security updates. It seems simple enough to bump sooner rather than wait until the last second.
**Release note**:
```release-note
NONE
```
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
Clean up Makefile and place Dockerfiles in subdirectory
**What this PR does / why we need it**:
Cleans up the Makefile to have more consistent targets and more readable/usable
**Release note**:
```release-note
NONE
```
/assign
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
Improve validation of certificates. Fix bug in checking certificate validity
**What this PR does / why we need it**:
Improves the validation of dnsNames and commonNames on certificate resources.
Fixes a bug in checking certificate validity.
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
Fixes#176, fixes#175
**Release note**:
```release-note
Fix a bug in checking certificate validity and improve validation of dnsNames and commonName
```
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
Don't test pkg/client/ and third_party/ packages
Don't run tests for generated files
**Release note**:
```release-note
NONE
```
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
Add basic validation to ACME issuer
**What this PR does / why we need it**:
Improves validation of existing certificate resources
**Release note**:
```release-note
Fix bugs when checking validity of certificate resources
```
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
Add solverFor and wait.go unit tests for acme dns solver
**What this PR does / why we need it**:
Adds some unit tests for ACME dns solver
**Release note**:
```release-note
NONE
```
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
Move to github.com/jetstack/cert-manager repo
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
Closes#134
**Release note**:
```release-note
Move to 'jetstack' organisation.
Action required: this will require updating your existing deployments to point to the new image repository, as new tags will not be pushed to the old 'jetstackexperimental/cert-manager-controller` repository.
```
/area admin
/assign
/release-note-action-required
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
Tidy up informers
**What this PR does / why we need it**:
Refactors the controllers and issuers to use the new vendored and filtered informers
**Special notes for your reviewer**:
Do not merge until #178 has merged
**Release note**:
```release-note
No longer support ClusterIssuer resources when cert-manager is running with `--namespace` flag set
```
/assign