//go:generate ${GOBIN}/mockgen -destination clusterctl_service_mock.go -package=clusterctl ${GO_MODULE}/pkg/service/clusterctl ClusterCtlService
package clusterctl

import (
	"context"

	"github.com/tidbcloud/devops/entity"
	"github.com/tidbcloud/devops/pkg/service"
)

type ClusterCtlServiceAPI interface {
	ExecuteCtl(ctx context.Context, clusterID string, command string) (string, string, error)
	GetTopology(ctx context.Context, clusterID string) (entity.Topology, error)
}

type ClusterCtlService interface {
	ClusterCtlServiceAPI

	service.Service
}
