diff options
author | Andreas Eriksen <andreer@verizonmedia.com> | 2020-03-04 12:45:55 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-04 12:45:55 +0100 |
commit | ef444e66c24ab1c8b926c09586a6a5a138f64406 (patch) | |
tree | 811ac3e096b0f6781f3529ab78b0d1905c251299 /controller-server/src/main/java/com/yahoo/vespa/hosted/controller/certificate | |
parent | e9f06463d6847f3b7ab9e8bf748ed2d692763cc1 (diff) | |
parent | 455e50dc40c560c7cec9e4d891ba2d7ce9dd039e (diff) |
Merge pull request #12430 from vespa-engine/andreer/do-not-fail-if-secret-versions-not-yet-available
do not fail if secret version not yet available
Diffstat (limited to 'controller-server/src/main/java/com/yahoo/vespa/hosted/controller/certificate')
-rw-r--r-- | controller-server/src/main/java/com/yahoo/vespa/hosted/controller/certificate/EndpointCertificateManager.java | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/certificate/EndpointCertificateManager.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/certificate/EndpointCertificateManager.java index d9f7d5f36b4..a3d90e423f8 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/certificate/EndpointCertificateManager.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/certificate/EndpointCertificateManager.java @@ -187,10 +187,13 @@ public class EndpointCertificateManager { } private OptionalInt latestVersionInSecretStore(EndpointCertificateMetadata originalCertificateMetadata) { - var certVersions = new HashSet<>(secretStore.listSecretVersions(originalCertificateMetadata.certName())); - var keyVersions = new HashSet<>(secretStore.listSecretVersions(originalCertificateMetadata.keyName())); - - return Sets.intersection(certVersions, keyVersions).stream().mapToInt(Integer::intValue).max(); + try { + var certVersions = new HashSet<>(secretStore.listSecretVersions(originalCertificateMetadata.certName())); + var keyVersions = new HashSet<>(secretStore.listSecretVersions(originalCertificateMetadata.keyName())); + return Sets.intersection(certVersions, keyVersions).stream().mapToInt(Integer::intValue).max(); + } catch (SecretNotFoundException s) { + return OptionalInt.empty(); // Likely because the certificate is very recently provisioned - keep current version + } } private EndpointCertificateMetadata provisionEndpointCertificate(Instance instance, Optional<EndpointCertificateMetadata> currentMetadata) { |