package framework

import (
	"fmt"

	"github.com/pingcap/test-infra/sdk/resource/impl/k8s"
)

func (f *Framework) CreateTestbed() *k8s.Testbed {
	r, err := k8s.NewTestbedClient(f.KubeClientSetPack).Create([]byte(fmt.Sprintf(`{
"name": "%s",
"type": "TEST_BED"
}
`, f.Namespace)))

	ExpectNoError(err)
	return r.(*k8s.Testbed)
}

func (f *Framework) CreateTestbedWithQos() *k8s.Testbed {
	r, err := k8s.NewTestbedClient(f.KubeClientSetPack).Create([]byte(fmt.Sprintf(`{
"name": "%s",
"type": "TEST_BED",
"qos": [{"podGroup": "cluster-1"}]
}
`, f.KubeClientSetPack.Namespace)))
	if err != nil {
		log("Error", "create testbed with QoS error: %s", err)
	}
	return r.(*k8s.Testbed)
}
