Commit Graph
98 Commits
Author SHA1 Message Date
jetstack-botandGitHub 4dc46d68cd Merge pull request #1910 from JoshVanL/ca-issuer-sign-migration
Move CA signer into ./pkg/controller/certificaterequests/ca
2019-07-25 14:48:28 +01:00
JoshVanL f8c511a705 Address ca sign returning error
Signed-off-by: JoshVanL <vleeuwenjoshua@gmail.com>
2019-07-23 12:06:30 +01:00
JoshVanL 294d8ae93d Move IssuerKind to ./pkg/util
Signed-off-by: JoshVanL <vleeuwenjoshua@gmail.com>
2019-07-23 09:27:22 +01:00
JoshVanL ab838197fc Move CA signer into ./pkg/controller/certificaterequests/ca
Signed-off-by: JoshVanL <vleeuwenjoshua@gmail.com>
2019-07-23 09:27:22 +01:00
James Munnelly 32bc10710e Update use of featuregate package
Signed-off-by: James Munnelly <james@munnelly.eu>
2019-07-20 01:57:24 +01:00
James Munnelly b99b492827 Remove unused var from GenerateCSR
Signed-off-by: James Munnelly <james@munnelly.eu>
2019-07-17 10:04:40 +01:00
James Munnelly 096fa22d07 Set ExtKeyUsageServerAuth in GenerateTemplateFromCertificateRequest
Signed-off-by: James Munnelly <james@munnelly.eu>
2019-07-05 17:27:43 +01:00
JoshVanL a60a6d755f Share key type func
Signed-off-by: JoshVanL <vleeuwenjoshua@gmail.com>
2019-07-05 10:14:25 +01:00
JoshVanL f9417da5c5 Fixes and adds tests to utils/Equal.. funcs
Signed-off-by: JoshVanL <vleeuwenjoshua@gmail.com>
2019-07-04 15:21:00 +01:00
JoshVanL 98d5725eea WIP, add CertificateRequest e2e tests
Signed-off-by: JoshVanL <vleeuwenjoshua@gmail.com>
2019-07-03 15:59:05 +01:00
JoshVanL 6b1ff0148b Adds certificate request base controller and CA issuer controller
instance

Signed-off-by: JoshVanL <vleeuwenjoshua@gmail.com>
2019-07-03 15:42:03 +01:00
JoshVanL 79e5cf37a3 Improve comments and test coverage of pkg/issuer/ca/sign.go
Signed-off-by: JoshVanL <vleeuwenjoshua@gmail.com>
2019-07-02 11:55:45 +01:00
JoshVanL f5d0428c78 Moves SignCSRTemplate to pkg/utils/pki
Signed-off-by: JoshVanL <vleeuwenjoshua@gmail.com>
2019-07-01 09:23:58 +01:00
JoshVanL e70374d069 Adds IsCA to CSR template generation
Signed-off-by: JoshVanL <vleeuwenjoshua@gmail.com>
2019-06-30 17:59:08 +01:00
JoshVanL 70b974695b Adds Sign function to CA issuer
Signed-off-by: JoshVanL <vleeuwenjoshua@gmail.com>
2019-06-28 16:40:12 +01:00
Crystal-Chunandjetstack-bot 4f35c56443 Allows certificates to use PKCS#8 Issue 1155 (#1308)
* Added KeyEncoding spec value to Certificate type.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added validation for Certificate Spec field KeyEncoding.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added Encoding PKCS8 function for encoding private keys in generate.go.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Modified the call to the private key encoding function for each issuer in issue.go to pass in the extra KeyEncoding field.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added case for decoding pkcs8 key.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Converting decoded PKCS8 key into crypto.Signer.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added debugging log statements for decoding private keys.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Log messages for decoding private keys.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added logs for decoding private keys.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added debug logs.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Add debug logs.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Modified keys package.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed the key converter to the ssh package.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Testing decoding as pkcs1 key instead.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Trying to convert to crypto.Signer for PKCS8.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Converting to rsa.PrivateKey.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed return to type private key.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changing parsing.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Cleaned up logs.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed logging info.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed debug logging.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fix parse test for new pkcs8 support.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed extra lines.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed extra lines and spaces.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed duplicate PKCS8 functions.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed the KeyEncoding field from an int to a string.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed issue.go for issuers to pass in the certificate when encoding private key.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Corrected capitalization of Spec.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed the error message to use the correct variable.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixed selfsigned issue.go to pass in certificate object instead of the keyEncoding.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed error format.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed test to pass in certificate variable into encoding private key function.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixed syntax issue.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed parameter for encode private key function in parse_test.go.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixed parse test for encode private key function.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed invalid syntax.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Moved the if statement.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Cleaned up go-fmt errors.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Ran bazel run //hack:update-reference-docs.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed encode private key to take keyEncoding instead of certificate.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed setting keyEncoding for ca issue test.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixing passing in the correct type for encoding private key.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixing passing in the correct type for encoding private key.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixed parameter passed into encode private key for parse test.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added unit test for encoding different private key types.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed key encoding field from existing test.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added KeyEncoding spec value to Certificate type.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added validation for Certificate Spec field KeyEncoding.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added Encoding PKCS8 function for encoding private keys in generate.go.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Modified the call to the private key encoding function for each issuer in issue.go to pass in the extra KeyEncoding field.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added case for decoding pkcs8 key.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Converting decoded PKCS8 key into crypto.Signer.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added debugging log statements for decoding private keys.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Log messages for decoding private keys.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added logs for decoding private keys.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added debug logs.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Add debug logs.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Modified keys package.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed the key converter to the ssh package.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Testing decoding as pkcs1 key instead.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Trying to convert to crypto.Signer for PKCS8.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Converting to rsa.PrivateKey.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed return to type private key.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changing parsing.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Cleaned up logs.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed logging info.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed debug logging.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fix parse test for new pkcs8 support.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed extra lines.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed extra lines and spaces.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed duplicate PKCS8 functions.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed the KeyEncoding field from an int to a string.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed issue.go for issuers to pass in the certificate when encoding private key.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Corrected capitalization of Spec.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed the error message to use the correct variable.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixed selfsigned issue.go to pass in certificate object instead of the keyEncoding.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed error format.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed test to pass in certificate variable into encoding private key function.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixed syntax issue.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed parameter for encode private key function in parse_test.go.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixed parse test for encode private key function.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed invalid syntax.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Moved the if statement.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Cleaned up go-fmt errors.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Ran bazel run //hack:update-reference-docs.

Signed-off-by: Crystal Chun <crystalchun@crystals-mbp.raleigh.ibm.com>
Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Changed encode private key to take keyEncoding instead of certificate.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed setting keyEncoding for ca issue test.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixing passing in the correct type for encoding private key.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixing passing in the correct type for encoding private key.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixed parameter passed into encode private key for parse test.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added unit test for encoding different private key types.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed key encoding field from existing test.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed syntax error for declaring constant.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Moving private key all to one line.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added commas after each test case and changed the private key to a pkcs1 rsa private key.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixed test errors.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added default error.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Predefined actualEncoding variable.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Undeclared actualEncoding variable.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Declared actualEncoding variable to nil.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Declared actualEncoding variable to empty key encoding type.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixed unit test.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Ran update go-fmt.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Added e2e test for pkcs8 certificate.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Removed unused variable.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Creating issue in pkcs8 e2e test.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Fixing no new variables on the left side of := for err variable.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* Updated docs to mention the key encoding field.

Signed-off-by: Crystal Chun <crystalchun@Crystals-MacBook-Pro.local>

* change venafi issuer to support different cert encoding

Signed-off-by: Daniel Morsing <dmo@jetstack.io>

* update crds

Signed-off-by: Daniel Morsing <dmo@jetstack.io>
2019-06-18 11:34:03 +01:00
James Munnelly a13543013d Use logr in pkg/util/kube
Signed-off-by: James Munnelly <james@munnelly.eu>
2019-03-12 14:24:50 +00:00
James Munnelly dfabece6eb Use a one-use CA to sign temporary certificates
Signed-off-by: James Munnelly <james@munnelly.eu>
2019-02-25 20:48:13 +00:00
James Munnelly 439499561c Remove dependence on k8s.io/ingress
Signed-off-by: James Munnelly <james@munnelly.eu>
2019-02-22 12:34:52 +00:00
James Munnelly 6c66185358 Fix bug when specify keyAlgorithm without an explicit keySize
Signed-off-by: James Munnelly <james@munnelly.eu>
2019-02-04 17:34:56 +00:00
jetstack-botandGitHub 22b0863801 Merge pull request #1128 from lrolaz/certificate-ip-sans
Add IP Address in CSR
2019-01-31 23:05:25 +00:00
jetstack-botandGitHub e848bcec57 Merge pull request #1191 from chr-fritz/parse-pkcs8
Adds key parser for PKCS#8 encoded private keys.
2019-01-31 22:49:26 +00:00
Laurent ROLAZ ed82465df5 Refactoring
Signed-off-by: Laurent Rolaz <laurent.rolaz@gmail.com>
2019-01-30 13:04:28 +01:00
Laurent RolazandLaurent ROLAZ 597cda40af Fix some GO Style
Signed-off-by: Laurent Rolaz <laurent.rolaz@gmail.com>
2019-01-25 18:50:16 +01:00
Laurent RolazandLaurent ROLAZ 18daea16ae Remove duplicate IPAddressesToString
Signed-off-by: Laurent Rolaz <laurent.rolaz@gmail.com>
2019-01-25 18:50:16 +01:00
Laurent RolazandLaurent ROLAZ c5fa202239 Fix some GO Style
Signed-off-by: Laurent Rolaz <laurent.rolaz@gmail.com> (+2 squashed commits)
Squashed commits:
[ce6cc2eb] Fix some GO Style

Signed-off-by: Laurent Rolaz <laurent.rolaz@gmail.com>
[563b7275] Fix some GO Style

Signed-off-by: Laurent Rolaz <laurent.rolaz@gmail.com>
2019-01-25 18:50:16 +01:00
Laurent RolazandLaurent ROLAZ 531c26061c GO Format
Signed-off-by: Laurent Rolaz <laurent.rolaz@gmail.com>

Signed-off-by: Laurent Rolaz <laurent.rolaz@gmail.com>
2019-01-25 18:38:12 +01:00
Laurent RolazandLaurent ROLAZ 6dcc408741 Add IP Address in CSR
Signed-off-by: Laurent Rolaz <laurent.rolaz@gmail.com>
2019-01-25 18:38:12 +01:00
James Munnelly 7fd1c2a0e3 Fix issuing a certificate into a pre-existing secret
Signed-off-by: James Munnelly <james@munnelly.eu>
2019-01-15 14:44:11 +00:00
Christian Fritz 96ae76b89d Adds key parser for PKCS#8 encoded private keys.
Signed-off-by: Christian Fritz <christian.fritz@qaware.de>
2019-01-14 08:46:52 +01:00
Mike BryantandLouis Taylor 4fa6d9775c feat: Include entire certificate chain if provided
Allow a user to provide an entire certificate chain to the ca issuer. Include that chain in all generated certificates

Signed-off-by: Mike Bryant <m@ocado.com>
2019-01-09 11:39:48 +00:00
James Munnelly 0fcc0c666c Update copyright header year
Signed-off-by: James Munnelly <james@munnelly.eu>
2019-01-07 15:07:55 +00:00
James Munnelly 08882e5fc2 Wrap missing secret data errors with Invalid
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-11-29 01:18:43 +00:00
James Munnelly f358d987ea Retrieve private key before certificate in kube TLS function
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-11-28 19:18:30 +00:00
James Munnelly dc97dde2ef Make Certificate Ready condition behaviour consistent between all issuer types
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-11-28 17:00:51 +00:00
Max Ehrlichandjetstack-bot bbd9249198 Configurable issuer duration and renewBefore Take 2 (#893)
* Configurable issuer duration and renewBefore [1/3]

This is part one of (probably) three parts manually moving the changes from commit 723015174a167d746323f506ab3575cfb243d8bd to the new master. This commit moves the basic functionality of configurable duration while skipping e2e tests and docs. It does not include new work.

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Configurable issuer duration and renewBefore [2/3]

This commit moves over most of the e2e testing updates, some things are intentionally left out as they may be obsolete

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Configurable issuer duration and renewBefore [3/3]

This commit moves the documentation changes, completely the migration of the original code to the latest master

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Rerunning all hack scripts with since the massive bazel update

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Add missing boilerplate headers

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Rerun codegen hack

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Rerunning update-docs hack

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Fix failing unit tests

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Fix build errors in e2e tests

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Rerun update-deps

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Don't recreate the CA issuer, it already exists

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Need to create new issuers for the duration and renew time tests because those fields are set in the issuer, so make sure they are named uniquely

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Add duration e2e tests for self-signed issuer

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Add duration e2e tests for vault w/ custom mount path

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Add validation to disallow acme certificates with duration and renewBefore set and update unit tests to verify

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Update docs to mention duration/renew for self-signed issuer and fix potential parsing errors with rst formatting

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Self-signed issuer was missing duration validation

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Fix a bug causing certificates with a short enough renew-before w.r.t their duration to be renewed instantly and forever

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Print the exact time until renewal

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Move duration and renwal validation to the issuer validation

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Update e2e tests to work with new validation

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Add e2e test for the self-signed issuer

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Redo cert duration and renew before to appear as part of the CSR and not the issuer

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Updating tests to match new duration/renewbefore format

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Update e2e tests to match new format

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Update docs to reflect changing the field from issuers to certificates

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Remove event firing and replace with a TODO as of discussion on PR

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Run hack scripts

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Remove the sync unit test since without events there is no way to catch the warnings that it was testing

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Use IssuerOptions RenewBeforeExpiryDuration if certificates dont set a renewBefore value for immediate renewal checks

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Delete check on certificate data length in e2e test for certificate duration as there is no reason it should be there

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Update e2e tests since certificate creation will never generate an event

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Rerunning hack scripts after big rebase

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Fix a few problems that slipped through during the rebase

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Fix an e2e error that resulted from the rebase

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Add unit test for the calculateTimeBeforeExpiry function

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Adding back in a bunch of missing error checks

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Remove unused function

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Add missing boilerplate

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Remove unused constant

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Move log constants to function body

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Rerun hack scripts

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Remove mistakenly commited file

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Remove double-import of util package

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Fix bad function call in e2e vault issuer

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Change duration and renewBefore to be pointer fields as they are optional

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Remove wrong vault issuer test that got passed the rebase somehow

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Change e2e to use pointer format

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Move e2e cert tests out of issuer test file

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Move e2e self-signed issuer test to new location

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Make sure to check for nil in GenerateTemplate

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Add more empty checks to be safe

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Rerunning hacks after rebase

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Fix bad function call in new e2e test

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Try not setting duration and renewbefore on acme e2e tests

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Zero checks should really just be replaced by nil tests, zero should be caught as any other too-small value

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Fixed a missing nil check that got away

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Change e2e duration test format to use pointer times to better simulate API calls

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Fix sync unit test to match e2e test format

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Fix vault e2e test

Signed-off-by: Max Ehrlich <max.ehr@gmail.com>

* Revert changes to Certificate sync function

Signed-off-by: James Munnelly <james@munnelly.eu>

* Remove selfsigned e2e issuer.go

Signed-off-by: James Munnelly <james@munnelly.eu>

* Don't use ACME issuer in duration example and tidy up line endings

Signed-off-by: James Munnelly <james@munnelly.eu>

* Allow renewBefore to be set on ACME certificates

Signed-off-by: James Munnelly <james@munnelly.eu>

* Update renewBefore ACME docs. Remove unused fields.

Signed-off-by: James Munnelly <james@munnelly.eu>

* Rename calculateTimeBeforeExpiry to calculateDurationUntilRenew

Signed-off-by: James Munnelly <james@munnelly.eu>
2018-11-14 22:30:00 +00:00
James Munnelly fdfc7f2f77 Don't explicitly set SignatureAlgorithm on signed Certificate
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-11-07 11:14:54 +00:00
James Munnelly ad0971288e Run update-gofmt
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-11-06 11:10:21 +00:00
Luke Mallon (Nalum) e2e1077cc8 Update bazel build files
Signed-off-by: Luke Mallon (Nalum) <luke@mallon.io>
2018-10-29 15:59:54 +00:00
Luke Mallon (Nalum) 35f2d16ec8 Add tests to cover the version function
Signed-off-by: Luke Mallon (Nalum) <luke@mallon.io>
2018-10-27 18:32:07 +01:00
Luke Mallon (Nalum) c4fc6d7373 Update version string
Only add the commit hash to the version string if the AppVersion is set
to canary. See #997

Signed-off-by: Luke Mallon (Nalum) <luke@mallon.io>
2018-10-27 17:33:45 +01:00
jetstack-botandGitHub 500957f37e Merge pull request #968 from munnerz/sig-algo
Update SignatureAlgorithm function to also return PublicKey type
2018-10-16 15:03:37 +01:00
jetstack-botandGitHub 9eab875005 Merge pull request #967 from munnerz/unused-args
Remove unused arg from GenerateTemplate
2018-10-16 14:36:36 +01:00
James Munnelly 3b81bb594d Update unit tests
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-16 12:41:29 +01:00
James Munnelly 293bfd412f Update SignatureAlgorithm function to also return PublicKey type
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-16 12:31:24 +01:00
James Munnelly 03c6f1229f Remove unused arg from GenerateTemplate
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-16 12:29:38 +01:00
James Munnelly 09e0f1f188 Run //hack:update-bazel
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-16 10:27:04 +01:00
James Munnelly f33561741f Remove unused/dead code
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-16 10:23:47 +01:00
James Munnelly 420683609b Add comments to pkg/util functions
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-16 10:16:34 +01:00
James Munnelly 84978d88d8 Add extra comments to acme and pki package
Signed-off-by: James Munnelly <james@munnelly.eu>
2018-10-13 21:05:18 +01:00