package entity

import (
	"strings"

	"github.com/tidbcloud/serverless-service/internal/config"
)

const (
	// DefaultCloudProvider is used by legacy records that predate the
	// cloud_provider column.
	DefaultCloudProvider = config.ProviderAWS

	defaultKubernetesNameSuffix = "-f01"
)

// DefaultKubernetesNameParts returns the non-region parts of the legacy
// Kubernetes name. SQL callers can concatenate the normalized region between
// these parts instead of duplicating the stage and pool naming rule.
func DefaultKubernetesNameParts() (prefix, suffix string) {
	return config.Stage() + "-", defaultKubernetesNameSuffix
}

// DefaultKubernetesName resolves the Kubernetes name for legacy records that
// predate the kubernetes column.
func DefaultKubernetesName(region string) string {
	prefix, suffix := DefaultKubernetesNameParts()
	return prefix + strings.ToLower(region) + suffix
}
