2023-04-20 12:40:22 +00:00
|
|
|
// Copyright (c) HashiCorp, Inc.
|
2023-08-11 13:12:13 +00:00
|
|
|
// SPDX-License-Identifier: BUSL-1.1
|
2023-04-20 12:40:22 +00:00
|
|
|
|
2023-03-31 17:36:44 +00:00
|
|
|
//go:build !consulent
|
|
|
|
|
|
|
|
package structs
|
|
|
|
|
|
|
|
import (
|
|
|
|
"fmt"
|
|
|
|
|
|
|
|
"github.com/hashicorp/consul/acl"
|
|
|
|
)
|
|
|
|
|
|
|
|
func (e *ExportedServicesConfigEntry) validateServicesEnterprise() error {
|
|
|
|
for i, svc := range e.Services {
|
|
|
|
for j, consumer := range svc.Consumers {
|
|
|
|
if !acl.IsDefaultPartition(consumer.Partition) {
|
|
|
|
return fmt.Errorf("Services[%d].Consumers[%d]: partitions are an enterprise-only feature", i, j)
|
|
|
|
}
|
|
|
|
if consumer.SamenessGroup != "" {
|
|
|
|
return fmt.Errorf("Services[%d].Consumers[%d]: sameness-groups are an enterprise-only feature", i, j)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|