2024-01-29 22:33:45 +00:00
|
|
|
// Copyright (c) HashiCorp, Inc.
|
|
|
|
// SPDX-License-Identifier: BUSL-1.1
|
|
|
|
|
|
|
|
//go:build !consulent
|
|
|
|
|
|
|
|
package discovery
|
|
|
|
|
|
|
|
import (
|
|
|
|
"errors"
|
|
|
|
"fmt"
|
2024-02-02 23:29:38 +00:00
|
|
|
|
|
|
|
"github.com/hashicorp/consul/acl"
|
2024-01-29 22:33:45 +00:00
|
|
|
)
|
|
|
|
|
2024-02-02 23:29:38 +00:00
|
|
|
func (f *V1DataFetcher) NormalizeRequest(req *QueryPayload) {
|
|
|
|
// Nothing to do for CE
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
func validateEnterpriseTenancy(req QueryTenancy) error {
|
2024-02-08 04:24:00 +00:00
|
|
|
if req.Namespace != "" || req.Partition != acl.DefaultPartitionName {
|
2024-02-02 23:29:38 +00:00
|
|
|
return ErrNotSupported
|
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func queryTenancyToEntMeta(_ QueryTenancy) acl.EnterpriseMeta {
|
|
|
|
return acl.EnterpriseMeta{}
|
|
|
|
}
|
|
|
|
|
2024-01-29 22:33:45 +00:00
|
|
|
// fetchServiceFromSamenessGroup fetches a service from a sameness group.
|
2024-02-09 02:56:04 +00:00
|
|
|
func (f *V1DataFetcher) fetchServiceFromSamenessGroup(ctx Context, req *QueryPayload, cfg *v1DataFetcherDynamicConfig, lookupType LookupType) ([]*Result, error) {
|
2024-02-14 17:40:38 +00:00
|
|
|
f.logger.Trace(fmt.Sprintf("fetchServiceFromSamenessGroup - req: %+v", req))
|
2024-01-29 22:33:45 +00:00
|
|
|
if req.Tenancy.SamenessGroup == "" {
|
|
|
|
return nil, errors.New("sameness groups must be provided for service lookups")
|
|
|
|
}
|
2024-02-09 02:56:04 +00:00
|
|
|
return f.fetchServiceBasedOnTenancy(ctx, req, cfg, lookupType)
|
2024-01-29 22:33:45 +00:00
|
|
|
}
|