github.com/cloud-foundations/dominator@v0.0.0-20221004181915-6e4fee580046/fleetmanager/rpcd/getHypervisorForVm.go (about) 1 package rpcd 2 3 import ( 4 "fmt" 5 6 "github.com/Cloud-Foundations/Dominator/lib/constants" 7 "github.com/Cloud-Foundations/Dominator/lib/errors" 8 "github.com/Cloud-Foundations/Dominator/lib/srpc" 9 proto "github.com/Cloud-Foundations/Dominator/proto/fleetmanager" 10 ) 11 12 func (t *srpcType) GetHypervisorForVM(conn *srpc.Conn, 13 request proto.GetHypervisorForVMRequest, 14 reply *proto.GetHypervisorForVMResponse) error { 15 hypervisor, err := t.hypervisorsManager.GetHypervisorForVm( 16 request.IpAddress) 17 response := proto.GetHypervisorForVMResponse{ 18 Error: errors.ErrorToString(err), 19 } 20 if err == nil { 21 response.HypervisorAddress = fmt.Sprintf("%s:%d", 22 hypervisor, constants.HypervisorPortNumber) 23 } 24 *reply = response 25 return nil 26 }