Commit Graph

502 Commits

Author SHA1 Message Date
jetstack-bot
b92fc91208
Merge pull request #4267 from JoshVanL/ctl-remove-pkg-util
Move exported cmd util func to package where it is used
2021-07-29 11:02:12 +01:00
jetstack-bot
d062176777
Merge pull request #4243 from inteon/improved_go_routines
Cleanup goroutine management
2021-07-28 15:36:41 +01:00
Inteon
78d13787e6
remove duplicated error messages & cobra help messages on error
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-28 15:55:14 +02:00
joshvanl
1f4343d98e Move exported cmd util func to package where it is used. Removes util
package

Signed-off-by: joshvanl <vleeuwenjoshua@gmail.com>
2021-07-28 14:25:17 +01:00
Inteon
d430113666
remove os.Exit from cert-manager controller and make sure LeaderElection ReleaseOnCancel works
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-27 21:40:42 +02:00
jetstack-bot
3b50d78ae4
Merge pull request #4225 from jakexks/ingressv1
Feature: Support both v1 and v1beta1 ingresses.
2021-07-27 20:11:37 +01:00
Inteon
48e9c2bd16
exit with exit code 0 on cancel & release leader-election on cancel
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-27 19:43:08 +02:00
irbekrm
2ddf6fe637 Allows for annotations passed from CSR to Order to be filtered
Using the value from copied-annotation-prefixes flag, where by default kubectl, fluxcd, argocd annotations are excluded

Signed-off-by: irbekrm <irbekrm@gmail.com>
2021-07-27 10:55:09 +01:00
Irbe Krumina
3834a8fc0a Code review feedback
Co-authored-by: Josh Van Leeuwen <joshua.vanleeuwen@jetstack.io>
Signed-off-by: irbekrm <irbekrm@gmail.com>
2021-07-26 20:00:37 +01:00
irbekrm
ddf7e130b7 Allow users to specify which annotations should be copied from Certificate to CertificateRequest
Default to all being copied except for kubectl, fluxcd, argocd annotations

Signed-off-by: irbekrm <irbekrm@gmail.com>
2021-07-26 20:00:10 +01:00
Jake Sanders
67c6586161
Addressing code review comments in #4225
Signed-off-by: Jake Sanders <i@am.so-aweso.me>
2021-07-26 18:29:54 +01:00
Jake Sanders
0d93b93fc5
Feature: Support both v1 and v1beta1 ingresses.
Kubernetes is removing support for the v1beta1 Ingress type in 1.22: https://kubernetes.io/blog/2021/07/14/upcoming-changes-in-kubernetes-1-22/#api-changes
However, we still wish to support k8s v1.16 until mid 2022 when Openshift 3 becomes out of support.

cert-manager will now use v1 Ingress if available by using the discovery API.

Signed-off-by: Jake Sanders <i@am.so-aweso.me>
2021-07-26 18:29:42 +01:00
jetstack-bot
218408a741
Merge pull request #4112 from JoshVanL/certificate-signing-request=acme
CertificateSigningRequest ACME Controller
2021-07-26 11:51:12 +01:00
jetstack-bot
77c5c2fb16
Merge pull request #4184 from inteon/kubectl_certmanager_install_tests
Add basic tests to kubectl cert-manager x install
2021-07-23 16:16:19 +01:00
joshvanl
b041a8fb3d Wires up ACME CSR controller
Signed-off-by: joshvanl <vleeuwenjoshua@gmail.com>
2021-07-23 16:00:09 +01:00
Inteon
632459c6d9
resolve bug & cleanup
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-23 15:41:24 +02:00
Inteon
81e216eeba
wait for goroutines to end before exiting
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-23 15:30:26 +02:00
Inteon
f11c44dd15
acme solver wait for server to shutdown
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-23 15:30:02 +02:00
Inteon
0ed0135930
Improvements based on reviewer's feedback
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-23 15:29:43 +02:00
jetstack-bot
9ad9e220f3
Merge pull request #4230 from inteon/fix_exit_codes
set correct exit codes
2021-07-23 13:06:09 +01:00
Inteon
50daf04118
rename cmdutil to k8scmdutil
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-22 21:43:53 +02:00
Inteon
d6cd6f457d
set correct exit codes when exiting
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-22 12:57:08 +02:00
joshvanl
65cec6c212 Wires up Venafi CertificateSigningRequest controller
Signed-off-by: joshvanl <vleeuwenjoshua@gmail.com>
2021-07-19 15:50:23 +01:00
jetstack-bot
88e85d0725
Merge pull request #4205 from inteon/kubectl_check_api
Add kubectl 'cert-manager check api' command
2021-07-16 14:43:15 +01:00
Inteon
21bc98979e
improved ux
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-16 13:11:40 +02:00
Maël Valais
e5436df521 gateway-shim: don't crash cert-manager if the Gateway CRD isn't there
The Gateway CRD has to be installed, meaning that the CRDs may be
installed after cert-manager. We don't want cert-manager to crash in
that case; instead, we let the user know that cert-manager will keep
retrying looking for the CRDs with this message on startup:

  controller.go:181] cert-manager/controller/build-context "msg"="the
  Gateway API CRDs do not seem to be present, cert-manager will keep
  retrying watching for them"

The user then sees the following message printed (using an exponential
back-off):

  reflector.go:167: Failed to watch *v1alpha1.Gateway: failed to list
  *v1alpha1.Gateway: the server could not find the requested resource
  (get gateways.networking.x-k8s.io)

Signed-off-by: Maël Valais <mael@vls.dev>
2021-07-15 20:35:47 +02:00
Maël Valais
b5142f84c0 gateway-shim: only discover the gateway api when gateway-shim is enabled
Signed-off-by: Maël Valais <mael@vls.dev>
2021-07-15 20:35:34 +02:00
Maël Valais
30f9c123d3 gateway-shim: add the gateway-shim controller
Note that the gateway-shim is only half the work for supporting the
Gateway API in cert-manager. The other half is the HTTP01 solver
support, which is still worked on.

The Gateway API in cert-manager is releases as an experimental feature
and needs to be enabled manually with the following flag:

  --controllers=*,gateway-shim

All the annotations supported by ingress-shim are also supported by
gateway-shim, with some exceptions:

  "acme.cert-manager.io/http01-ingress-class"

This annotation is not supported on the Gateway resource. Although the
Gateway resource also has a "gatewayClass" field, we will need to add
another field instead of "ingress-class" to avoid confusion with the
ingress-shim.

  "acme.cert-manager.io/http01-edit-in-place"

This annotation is not supported because it is specific to some ingress
controllers like ingress-gce.

  "kubernetes.io/tls-acme"

This annotation is not supported because it is a behavior inherited from
kube-lego and we chose not to keep this behavior with the Gateway API.

Unlike the ingress-shim, you can reuse the same Secret name in multiple
TLS configurations on the same Gateway resource.

The ingress-shim now shows the exact location of the duplicate
secretName when the user gives the same secretName in two separate TLS
blocks.

Signed-off-by: Maël Valais <mael@vls.dev>
Co-authored-by: Jake Sanders <i@am.so-aweso.me>
2021-07-15 20:34:55 +02:00
Inteon
ac7775bdb4
made errors human readable, added unit tests, added check api to e2e, fixed os.Exit(1)
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-15 16:50:31 +02:00
Inteon
5458173739
Add kubectl 'cert-manager check api' command
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-15 16:50:31 +02:00
Inteon
611bac67cf
Add basic test cases
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-08 16:28:38 +02:00
jetstack-bot
e51bfe560c
Merge pull request #4138 from inteon/kubectl_certmanager_install_preview
Basic install functionality for kubectl plugin
2021-07-05 09:02:44 +01:00
Inteon
d4e8aad895
remove unused function
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-03 00:31:48 +02:00
Inteon
3f6efb7575
remove uninstall and resolve all outstanding issues
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-02 22:04:41 +02:00
Inteon
dfdb375b28
fix boilerplate
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-02 15:39:15 +02:00
Inteon
18ccebdae3
fix typo
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-02 15:14:45 +02:00
Inteon
38b95f897f
bugfix rel.Config is nil
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-02 15:08:41 +02:00
Inteon
b4f65b47ed
update docs
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-02 14:56:10 +02:00
Inteon
136b8ef374
simplified uninstalling
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-02 12:58:30 +02:00
Inteon
3177be515a
improve default flag values & other requested changes
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-02 12:58:30 +02:00
Inteon
f228e6c7be
fix command flags + move to experimental + redo uninstall logic
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-02 12:58:30 +02:00
Inteon
1c4b511876
basic install and uninstall functionality
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
2021-07-02 12:58:30 +02:00
joshvanl
d9be35c299 Wires up Vault CSR controller
Signed-off-by: joshvanl <vleeuwenjoshua@gmail.com>
2021-06-29 09:11:43 +01:00
jetstack-bot
67c8176801
Merge pull request #4106 from JoshVanL/ctl-experimental-create-csr
ctl experimental create certificatesigningrequest
2021-06-18 15:44:24 +01:00
joshvanl
3eccfaaa94 Adds review comments for adding supported versions, writing to stdout,
removing error wraping

Signed-off-by: joshvanl <vleeuwenjoshua@gmail.com>
2021-06-18 11:58:24 +01:00
jetstack-bot
fbd2a6d06a
Merge pull request #4105 from kit837/add-clock-time-seconds
Add clock_time_seconds metric
2021-06-15 21:00:53 +01:00
kit837
0f97e6d19d pass in clock.Clock for better test
Signed-off-by: kit837 <66801824+kit837@users.noreply.github.com>
2021-06-15 17:48:20 +00:00
jetstack-bot
b8a1f3d6fb
Merge pull request #4070 from irbekrm/3969_parameterize_and_document_image_building
3969 parameterize and document image building
2021-06-15 16:45:53 +01:00
joshvanl
331e178f60 Wires up ctl x create csr command
Signed-off-by: joshvanl <vleeuwenjoshua@gmail.com>
2021-06-15 15:37:28 +01:00
joshvanl
02666fde10 Adds create CertificateSingingRequest form Certificate command
Signed-off-by: joshvanl <vleeuwenjoshua@gmail.com>
2021-06-15 15:17:35 +01:00