diff options
author | Jon Marius Venstad <jonmv@users.noreply.github.com> | 2022-12-05 16:05:38 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-12-05 16:05:38 +0100 |
commit | 87bb10ce865023969e89692896a6e0236e4fdc73 (patch) | |
tree | c7e455b68e326a686d378582a2bc0b91f64f872f /controller-api | |
parent | ec21bf916babb35971af12451fb7b64a2a89dd5f (diff) | |
parent | 1af3121223de1e1bd2e25c1822fc71208f8aee50 (diff) |
Merge pull request #25098 from vespa-engine/jonmv/store-and-share-vpc-service-names
Store and share private service names
Diffstat (limited to 'controller-api')
2 files changed, 11 insertions, 1 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/LoadBalancer.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/LoadBalancer.java index 8b0b674d682..01a5f9d60bb 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/LoadBalancer.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/LoadBalancer.java @@ -5,6 +5,7 @@ import ai.vespa.http.DomainName; import com.yahoo.config.provision.ApplicationId; import com.yahoo.config.provision.ClusterSpec; +import java.util.List; import java.util.Objects; import java.util.Optional; @@ -22,9 +23,10 @@ public class LoadBalancer { private final Optional<String> ipAddress; private final State state; private final Optional<String> dnsZone; + private final Optional<PrivateServiceInfo> service; public LoadBalancer(String id, ApplicationId application, ClusterSpec.Id cluster, Optional<DomainName> hostname, - Optional<String> ipAddress, State state, Optional<String> dnsZone) { + Optional<String> ipAddress, State state, Optional<String> dnsZone, Optional<PrivateServiceInfo> service) { this.id = Objects.requireNonNull(id, "id must be non-null"); this.application = Objects.requireNonNull(application, "application must be non-null"); this.cluster = Objects.requireNonNull(cluster, "cluster must be non-null"); @@ -32,6 +34,7 @@ public class LoadBalancer { this.ipAddress = Objects.requireNonNull(ipAddress, "ipAddress must be non-null"); this.state = Objects.requireNonNull(state, "state must be non-null"); this.dnsZone = Objects.requireNonNull(dnsZone, "dnsZone must be non-null"); + this.service = Objects.requireNonNull(service, "service must be non-null"); } public String id() { @@ -62,6 +65,10 @@ public class LoadBalancer { return state; } + public Optional<PrivateServiceInfo> service() { + return service; + } + public enum State { active, inactive, @@ -69,4 +76,6 @@ public class LoadBalancer { unknown } + public record PrivateServiceInfo(String id, List<String> allowedUrns) { } + } diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/PathGroup.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/PathGroup.java index ff0a698bc48..20847c2013f 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/PathGroup.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/PathGroup.java @@ -135,6 +135,7 @@ enum PathGroup { "/application/v4/tenant/{tenant}/application/{application}/environment/{environment}/region/{region}/instance/{ignored}/clusters", "/application/v4/tenant/{tenant}/application/{application}/environment/{environment}/region/{region}/instance/{ignored}/logs", "/application/v4/tenant/{tenant}/application/{application}/environment/{environment}/region/{region}/instance/{ignored}/metrics", + "/application/v4/tenant/{tenant}/application/{application}/environment/{environment}/region/{region}/instance/{ignored}/private-service", "/application/v4/tenant/{tenant}/application/{application}/environment/{environment}/region/{region}/instance/{ignored}/suspended", "/application/v4/tenant/{tenant}/application/{application}/environment/{environment}/region/{region}/instance/{ignored}/service/{*}", "/application/v4/tenant/{tenant}/application/{application}/environment/{environment}/region/{region}/instance/{ignored}/global-rotation/{*}", |