Commit Graph

603 Commits

Author SHA1 Message Date
James Munnelly
e815e42307 Add additional API type comments
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 14:08:51 +01:00
James Munnelly
039a086f58 run //hack:update-bazel
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:40 +01:00
James Munnelly
a98415fec7 Fix up test cases after rebase
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:39 +01:00
James Munnelly
eadbbc85c5 Add missing boilerplate headers
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:39 +01:00
James Munnelly
d323a1df0d Add unit tests for acmeorders and acmechallenges
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:39 +01:00
James Munnelly
9214615d6e Fix race issues in ACME issue function. Add extended unit tests.
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:39 +01:00
James Munnelly
ad99639b44 Fix failing test
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:38 +01:00
James Munnelly
847d0c6152 Refactor controllers to return Response structures
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:38 +01:00
James Munnelly
1f6013e39b Add unit tests for ACME Prepare function
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:38 +01:00
James Munnelly
80e0085b5a Remove old issuer check in Prepare function
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:38 +01:00
James Munnelly
d316ea6fb9 Add support for backing-off creating orders after failure
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:38 +01:00
James Munnelly
5482ece3f5 Update unit test framework to support actions and required reactors
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:38 +01:00
James Munnelly
967a48e1dc Add ACME Order & Challenge controllers
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:38 +01:00
James Munnelly
65487e1d2b Update ACME HTTP solver to use Challenge resources
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:37 +01:00
James Munnelly
2b663eb9a9 Update ACME DNS solver to use Challenge resources
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:37 +01:00
James Munnelly
f8b1e653f3 Refactor ACME Issuer to create and manage Order resources
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:37 +01:00
James Munnelly
4fcfbb44ef Add IsFinalState and IsErrorState functions
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:37 +01:00
James Munnelly
2eb785655c Run //hack:update-codegen
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:37 +01:00
James Munnelly
f3991c6edf run //hack:update-bazel
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 12:40:37 +01:00
Vincent Desjardins
4e89b611cf missing omitempty for CABundle field in Vault issuer
Signed-off-by: Vincent Desjardins <vdesjardins@gmail.com>
2018-10-12 11:14:08 +00:00
James Munnelly
bfd8ac7eab Add Order and Challenge API types
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-12 11:08:51 +01:00
Vincent Desjardins
7b01a8aa0d update code review #2
Signed-off-by: Vincent Desjardins <vdesjardins@gmail.com>
2018-10-11 02:19:55 +00:00
Vincent Desjardins
92ac7a7c08 code review updates
Signed-off-by: Vincent Desjardins <vdesjardins@gmail.com>
2018-10-11 01:22:05 +00:00
Vincent Desjardins
7c1ff275f0 vault ca bundle support
Signed-off-by: Vincent Desjardins <vdesjardins@gmail.com>
2018-10-11 01:22:05 +00:00
jetstack-bot
620395511a
Merge pull request #924 from arnoldbechtoldt/useClusterIPsvc
Make http01 solver serviceType configurable
2018-10-10 13:42:11 +01:00
jetstack-bot
5ea95b6cc1
Merge pull request #923 from arnoldbechtoldt/issue892
make http01 solver pod resource request/limits configurable, refs #892
2018-10-10 13:06:11 +01:00
Arnold Bechtoldt
ce1dd5e8b5 update API docs
Signed-off-by: Arnold Bechtoldt <arnold.bechtoldt@inovex.de>
2018-10-10 13:31:07 +02:00
Arnold Bechtoldt
1587741820 rename setting and update docs regarding solver service type
Signed-off-by: Arnold Bechtoldt <arnold.bechtoldt@inovex.de>
2018-10-08 15:24:17 +02:00
jetstack-bot
912c7672bd
Merge pull request #848 from Queuecumber/ca-nginx
Include CA Certificate In Secrets
2018-10-08 13:04:37 +01:00
acoshift
3e9085f376
remove key algor validation in ACME issuer
Signed-off-by: Thanatat Tamtan <acoshift@gmail.com>
2018-10-08 17:47:31 +07:00
Arnold Bechtoldt
d261e1f3f1 make serviceType configurable, fixes #928
Signed-off-by: Arnold Bechtoldt <arnold.bechtoldt@inovex.de>
2018-10-08 10:55:56 +02:00
acoshift
fc7711967e
allow ecdsa for acme
Signed-off-by: Thanatat Tamtan <acoshift@gmail.com>
2018-10-07 20:22:41 +07:00
Arnold Bechtoldt
845eb7f57c make http01 solver pod resource request/limits configurable, refs #892
Signed-off-by: Arnold Bechtoldt <arnold.bechtoldt@inovex.de>
2018-09-26 14:39:06 +02:00
splashx
4e9af51629
fix rfc2136 provider missing port error, plumb dnsNameserver01
Signed-off-by: splashx <splash@gmail.com>
2018-09-17 17:38:09 +02:00
Max Ehrlich
5eaf89ba4a
Simplify getting the ca cert bytes from the ca chain
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-15 17:41:17 -04:00
Max Ehrlich
f81f499d3d
Rerun gofmt
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-15 17:18:40 -04:00
Max Ehrlich
06fb0cefc7
Manually generate pem from cachain field since the vault api does not expose it
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-15 17:06:41 -04:00
Max Ehrlich
d63fbbab49
Fix go-fmt
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-13 18:54:30 -04:00
Max Ehrlich
48653e07f9
Return CA for vault certs, this uses the issuing_ca field from the vault api response, see (https://www.vaultproject.io/api/secret/pki/index.html#sign-certificate) for details
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-13 18:47:44 -04:00
Max Ehrlich
25e86d5588
For now, the vault issuer will also not store it's CA certificate
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-13 17:07:15 -04:00
Max Ehrlich
ab450c7463
Set the CA field if a non-nil ca cert is passed
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-13 17:07:15 -04:00
Max Ehrlich
213d5ec6b5
Self-signed issuers return a copy of the same certificate that was issued as the CA
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-13 17:07:14 -04:00
Max Ehrlich
511650ca82
ACME issuers currently will not support getting the CA certificate
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-13 17:07:14 -04:00
Max Ehrlich
58efbc068c
Update CA issuer to return the CA cert pem
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-13 17:07:14 -04:00
Max Ehrlich
280382e6ce
Issue and renew should now return the bytes of the CA certificate that was used to issue the certs. This should be set to nil if not applicable
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-13 17:07:14 -04:00
Max Ehrlich
41c7def791
Helper function to get PEM encoded bytes of x509 certs
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-13 17:07:14 -04:00
Max Ehrlich
e347572541
Change key name constant to better match its function
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-13 17:07:14 -04:00
Max Ehrlich
2524335f3a
Set the "ca.crt" field for certificates issued with isCA so that nginx can properly identify them for client authentication
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-13 17:07:13 -04:00
James Munnelly
48ecee9cfb run //hack:update-gofmt
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-09-13 11:25:04 +01:00
James Munnelly
b1f145625e Set up Bazel workspace with git status and pass ldflags
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-09-13 11:24:52 +01:00
James Munnelly
c4e11e110f run //hack:update-codegen
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-09-13 11:24:52 +01:00
James Munnelly
db65d6a170 run //hack:update-bazel
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-09-13 11:24:48 +01:00
jetstack-bot
140f9e7a4c
Merge pull request #891 from munnerz/metaauth-validation
Relax resource validation for CloudDNS service account credentials
2018-09-12 09:34:48 +01:00
jetstack-bot
feb589feb5
Merge pull request #661 from splashx/master
[ACME] Add RFC2136 DNS Provider (2nd attempt)
2018-09-12 09:11:48 +01:00
James Munnelly
01ab38e5ff Relax resource validation for CloudDNS service account credentials
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-09-12 08:44:06 +01:00
Evan Anderson
265c9610ff Add an error check for AzureDNS failure to create a solver.
Add documentation comments for public methods (caught by 'go lint').

Signed-off-by: Evan Anderson <evan.k.anderson@gmail.com>
2018-09-11 01:20:44 -07:00
splashx
3761c6c3a4
fix panic, wrong logic
Signed-off-by: splashx <splash@gmail.com>
2018-09-10 21:40:40 +02:00
splashx
51a8a57221
add tests for nameserver, tsigsecret and tsigname
Signed-off-by: splashx <splash@gmail.com>
2018-09-10 20:03:32 +02:00
jetstack-bot
8d6701de0b
Merge pull request #838 from Queuecumber/ca-org-days
Set Organization in Certificates
2018-09-10 17:56:17 +01:00
Max Ehrlich
10526f404a
Validate that vault certificates do not set the organization field
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-10 10:33:53 -04:00
jetstack-bot
d55cd7ffe5
Merge pull request #664 from kiwigrid/enable-clouddns-meta-auth
enable clouddns meta auth
2018-09-10 13:49:17 +01:00
James Munnelly
ac08365928 Fix up test failure
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-09-10 13:25:33 +01:00
James Munnelly
8c5c402d1e Fix up bug preventing saBytes being used. Add comments.
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-09-10 13:21:51 +01:00
Max Ehrlich
fc8167581f
Update tests to support multiple orgs
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-08 16:21:13 -04:00
Max Ehrlich
6a9f1d2348
Update code to allow setting multiple organizations
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-08 16:21:13 -04:00
Max Ehrlich
a3f5f7b7e9
Add test for successful cert with organization set
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-08 16:21:13 -04:00
Max Ehrlich
54b567e734
Add test case that should fail acme validation
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-08 16:21:13 -04:00
Max Ehrlich
340d2725e7
Generate certificates with the new organization field
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-08 16:21:12 -04:00
Max Ehrlich
b3e9e33e9d
Validation for acme issuers
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-08 16:21:12 -04:00
Max Ehrlich
986a7af74f
Add the organization field to the certificate spec
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-09-08 16:21:12 -04:00
James Munnelly
9d3ea5649a Fix acme.privateKeySecretRef validation message
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-09-08 18:17:11 +01:00
James Munnelly
a48b60581b Run gofmt with go 1.11
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-09-08 03:19:00 +01:00
splashx
41111f7879
patch with rfc2136
Signed-off-by: splashx <splash@gmail.com>
2018-09-07 00:56:00 +02:00
jetstack-bot
834fda15a1
Merge pull request #478 from munnerz/webhooks
Add validating webhook and webhook tls autoconfiguration
2018-09-05 13:00:50 +01:00
JuanJo Ciarlante
1266f4116b
minor cleanups
Signed-off-by: JuanJo Ciarlante <juanjosec@gmail.com>
2018-08-28 22:23:57 -03:00
JuanJo Ciarlante
225a37ce7c
augment acmedns unit testing
Signed-off-by: JuanJo Ciarlante <juanjosec@gmail.com>
2018-08-28 22:20:31 -03:00
JuanJo Ciarlante
ef2924c26a
[jjo] fix panic from acmedns.go constructor failure
Signed-off-by: JuanJo Ciarlante <juanjosec@gmail.com>
2018-08-27 19:36:13 -03:00
rico.pahlisch
3b270623fd enable clouddns meta auth
Signed-off-by: Rico Pahlisch <rico.pahlisch@kiwigrid.com>
2018-08-27 09:13:05 +02:00
Frank Hamand
8b28b5adce Fix cloudflare provider failing on cleanup if no record is found
It's possible for cert-manager to get in a bad state where it thinks there's something to cleanup, but repeatedly fails to clean it up.

Not finding the record should not be an error when we're trying to delete the record anyway.

Signed-off-by: Frank Hamand <frankhamand@gmail.com>
2018-08-21 09:59:37 +01:00
James Munnelly
91bec0909c Add validation webhook
Signed-off-by: James Munnelly <james.munnelly@jetstack.io>
2018-08-20 12:34:05 +01:00
jetstack-bot
972f86704d
Merge pull request #787 from Queuecumber/master
Add ACME-DNS as a DNS-01 Provider
2018-08-17 13:33:57 +01:00
Max Ehrlich
65e6a65143
Update the test to support nameservers
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-14 14:57:21 -04:00
Max Ehrlich
96a037fc23
Fix go fmt failing
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-14 14:48:51 -04:00
jetstack-bot
dba15aabe6
Merge pull request #658 from munnerz/is-ca
Add 'isCA' field to Certificate spec
2018-08-14 12:35:53 +01:00
James Munnelly
8d3d095a29 Add 'isCA' field to Certificate spec
Signed-off-by: James Munnelly <james.munnelly@jetstack.io>
2018-08-14 10:32:48 +01:00
James Munnelly
22f5d8c816 Fix issue causing existing ingresses to not be cleaned up properly
Signed-off-by: James Munnelly <james.munnelly@jetstack.io>
2018-08-14 10:23:29 +01:00
James Munnelly
974fc9e1bb Add unit test for cleaning up existing ingress
Signed-off-by: James Munnelly <james.munnelly@jetstack.io>
2018-08-14 10:23:28 +01:00
Max Ehrlich
f7b1d413fb
Fix test for acme-dns provider
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-13 14:04:19 -04:00
Max Ehrlich
465bdc51d1
Boilerplate header
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-13 13:37:44 -04:00
Max Ehrlich
8d7baed20a
Support DNS01Nameservers field
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-13 13:37:03 -04:00
Max Ehrlich
b1eadabf42
Change wording from "accounts" to "account"
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-13 13:32:14 -04:00
Max Ehrlich
e791680a88
Namespace was moved from a class variable to a local
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-13 13:32:14 -04:00
Max Ehrlich
dab8a47ec6
Function signature for DNS01Record was changed to return an error, handle that
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-13 13:32:13 -04:00
Max Ehrlich
0209938c94
Add validation logic
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-13 13:32:13 -04:00
Max Ehrlich
d12fbc161f
Ensure key is good enough for acme-dns to accept
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-13 13:32:13 -04:00
Max Ehrlich
240828b272
Read test host from env variable
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-13 13:32:13 -04:00
Max Ehrlich
80a9e7bf03
Make sure names are consistent
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-13 13:32:13 -04:00
Max Ehrlich
9d1f233729
Fix env variable names in unit test
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-13 13:32:12 -04:00
Max Ehrlich
992602b472
Add unit test to dns testing
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-13 13:32:12 -04:00
Max Ehrlich
310a6f8689
Add unit test for acmedns
Signed-off-by: Max Ehrlich <max.ehr@gmail.com>
2018-08-13 13:31:43 -04:00