func (a *AgentServer) SetDockerDevice(value string) {
	cssSelector := fmt.Sprintf(`%v input[placeholder="loopback"]`, a.cssSelector)
	Expect(a.page.Find(cssSelector).Fill(value)).To(
		Succeed(),
		"should set a docker device value")
}
SetDockerDevice assigns docker device to this server
package agent
import (
	"fmt"
	"github.com/gravitational/robotest/e2e/uimodel/utils"
	"github.com/gravitational/robotest/infra"
	. "github.com/onsi/gomega"
	web "github.com/sclevine/agouti"
	. "github.com/sclevine/agouti/matchers"
)
type AgentServer struct {
	Hostname    string
	cssSelector string
	page        *web.Page
}
func CreateAgentServer(page *web.Page, cssSelector string) AgentServer {
	elem := page.Find(cssSelector)
	Expect(elem).To(BeFound())
	hostname, _ := elem.Find(".grv-provision-req-server-hostname span").Text()
	Expect(hostname).NotTo(BeEmpty(), "should have a hostname")
	return AgentServer{page: page, Hostname: hostname, cssSelector: cssSelector}
}
func (a *AgentServer) SetIP(value string) {
	cssSelector := fmt.Sprintf("%v .grv-provision-req-server-interface", a.cssSelector)
	utils.SetDropdownValue2(a.page, cssSelector, "", value)
}
func (a *AgentServer) NeedsDockerDevice() bool {
	cssSelector := fmt.Sprintf(`%v input[placeholder="loopback"]`, a.cssSelector)
	count, _ := a.page.Find(cssSelector).Count()
	return count == 1
}