package provider

import (
	"github.com/pingcap/errors"
	"github.com/tidbcloud/account/internel/dao"
	"github.com/tidbcloud/account/internel/dao/entity"
	"gorm.io/gorm"
)

func GetProvider(tx *gorm.DB, name entity.Cloud) (entity.Provider, error) {
	provider := entity.Provider{}
	err := entity.NewProviderQuerySet(tx).NameEq(name).One(&provider)
	return provider, errors.Annotatef(dao.TagNotFound(err), "failed to get provider %s", provider.Name)
}
