summaryrefslogtreecommitdiffstats
path: root/controller-api
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2019-09-10 09:29:17 +0200
committerMartin Polden <mpolden@mpolden.no>2019-09-10 11:04:00 +0200
commite906d38cd418490f0d18854d296977833bf7a8c2 (patch)
tree67a8ea5ca0249b74c986fac0294dcee91d08b8fc /controller-api
parent91d7d4dc1d940490d80ea5cd6b3d676a6f9a50fb (diff)
Let controller build list of certificate DNS names
Diffstat (limited to 'controller-api')
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/ApplicationCertificateMock.java13
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/ApplicationCertificateProvider.java4
2 files changed, 15 insertions, 2 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/ApplicationCertificateMock.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/ApplicationCertificateMock.java
index 70e82877096..cc2d08c3fcd 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/ApplicationCertificateMock.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/ApplicationCertificateMock.java
@@ -3,6 +3,10 @@ package com.yahoo.vespa.hosted.controller.api.integration.certificates;
import com.yahoo.config.provision.ApplicationId;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
import java.util.UUID;
/**
@@ -10,8 +14,15 @@ import java.util.UUID;
*/
public class ApplicationCertificateMock implements ApplicationCertificateProvider {
+ private final Map<ApplicationId, List<String>> dnsNames = new HashMap<>();
+
+ public List<String> dnsNamesOf(ApplicationId application) {
+ return Collections.unmodifiableList(dnsNames.getOrDefault(application, List.of()));
+ }
+
@Override
- public ApplicationCertificate requestCaSignedCertificate(ApplicationId applicationId) {
+ public ApplicationCertificate requestCaSignedCertificate(ApplicationId applicationId, List<String> dnsNames) {
+ this.dnsNames.put(applicationId, dnsNames);
return new ApplicationCertificate(String.format("vespa.tls.%s.%s@%s", applicationId.tenant(),
applicationId.application(),
UUID.randomUUID().toString()));
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/ApplicationCertificateProvider.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/ApplicationCertificateProvider.java
index b3fdee1415c..58bdef6df51 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/ApplicationCertificateProvider.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/ApplicationCertificateProvider.java
@@ -2,6 +2,8 @@ package com.yahoo.vespa.hosted.controller.api.integration.certificates;
import com.yahoo.config.provision.ApplicationId;
+import java.util.List;
+
/**
* Generates a certificate.
*
@@ -9,6 +11,6 @@ import com.yahoo.config.provision.ApplicationId;
*/
public interface ApplicationCertificateProvider {
- ApplicationCertificate requestCaSignedCertificate(ApplicationId applicationId);
+ ApplicationCertificate requestCaSignedCertificate(ApplicationId applicationId, List<String> dnsNames);
}