// Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 syntax = "proto3"; package hashicorp.consul.catalog.v1alpha1; import "pbcatalog/v1alpha1/health.proto"; import "pbcatalog/v1alpha1/workload.proto"; import "pbresource/resource.proto"; message ServiceEndpoints { repeated Endpoint endpoints = 1; } message Endpoint { // target_ref is the reference to the resource // for this endpoint endpoint. This currently must be a workload. hashicorp.consul.resource.ID target_ref = 1; // addresses is the list of addresses for this endpoint. // This has the same structure as the workload addresses. repeated WorkloadAddress addresses = 2; // ports is the map of ports for this endpoint. // This has the same structure as the workload ports but // will be filtered to just the ports selected by the service. map ports = 3; // health_status is the aggregated health status of this endpoint. Health health_status = 4; // identity is the name of the workload identity for this endpoint. string identity = 5; }