Coder Social home page Coder Social logo

libvirt / libvirt-go Goto Github PK

View Code? Open in Web Editor NEW
332.0 332.0 71.0 1.76 MB

Read-only mirror. Please submit merge requests / issues to https://gitlab.com/libvirt/libvirt-go

License: MIT License

Go 80.11% C 18.44% C++ 0.26% Dockerfile 1.15% Shell 0.05%

libvirt-go's Introduction

GitLab CI Build Status CII Best Practices Translation status

Libvirt API for virtualization

Libvirt provides a portable, long term stable C API for managing the virtualization technologies provided by many operating systems. It includes support for QEMU, KVM, Xen, LXC, bhyve, Virtuozzo, VMware vCenter and ESX, VMware Desktop, Hyper-V, VirtualBox and the POWER Hypervisor.

For some of these hypervisors, it provides a stateful management daemon which runs on the virtualization host allowing access to the API both by non-privileged local users and remote users.

Layered packages provide bindings of the libvirt C API into other languages including Python, Perl, PHP, Go, Java, OCaml, as well as mappings into object systems such as GObject, CIM and SNMP.

Further information about the libvirt project can be found on the website:

https://libvirt.org

License

The libvirt C API is distributed under the terms of GNU Lesser General Public License, version 2.1 (or later). Some parts of the code that are not part of the C library may have the more restrictive GNU General Public License, version 2.0 (or later). See the files COPYING.LESSER and COPYING for full license terms & conditions.

Installation

Instructions on building and installing libvirt can be found on the website:

https://libvirt.org/compiling.html

Contributing

The libvirt project welcomes contributions in many ways. For most components the best way to contribute is to send patches to the primary development mailing list. Further guidance on this can be found on the website:

https://libvirt.org/contribute.html

Contact

The libvirt project has two primary mailing lists:

Further details on contacting the project are available on the website:

https://libvirt.org/contact.html

libvirt-go's People

Contributors

alexzorin avatar andreabolognani avatar asaif avatar berrange avatar cbosdo avatar cfergeau avatar dmacvicar avatar dorzheh avatar eskultety avatar feiskyer avatar flavio avatar jkloetzke avatar jonasfj avatar kunteynir avatar leonid99 avatar nefixestrada avatar niteshkonkar avatar phrdina avatar purpleidea avatar r0l1 avatar rgbkrk avatar rmohr avatar robxu9 avatar s3rj1k avatar subuk avatar thegrumpylion avatar vincentbernat avatar vladikr avatar xpivarc avatar yalue avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

libvirt-go's Issues

JSON marshal on DomainEventLifecycle

I'm always getting Detail: 0 when I try to marshal DomainEventLifecycle into JSON. When I Printf the variable, detail is displayed ok:

Domain event="shutdown" detail="finished"
{"Event":6,"Detail":0}
Domain event="stopped" detail="shutdown"
{"Event":5,"Detail":0}

gotype errors in git tip

I haven't looked into these errors yet, but I recently noticed that my automated tests on git tip recently started failing due to gotype errors:

See: https://travis-ci.org/purpleidea/mgmt/jobs/266164065#L949

Heads up in case the solution/fix is obvious to anyone who wants to look into this. It might just be something that upstream golang broke.

HTH, feel free to close if you think it's unnecessary noise, I won't be offended.

Thanks,
James

resources/virt.go:162:31:error: cannot use libvirt.DOMAIN_VCPU_MAXIMUM (constant unknown with invalid type) as github.com/libvirt/libvirt-go.DomainVcpuFlags value in argument to dom.GetVcpusFlags (gotype)

resources/virt.go:235:5:error: cannot use libvirt.CRED_AUTHNAME (constant unknown with invalid type) as github.com/libvirt/libvirt-go.ConnectCredentialType value in array or slice literal (gotype)

resources/virt.go:235:28:error: cannot use libvirt.CRED_PASSPHRASE (constant unknown with invalid type) as github.com/libvirt/libvirt-go.ConnectCredentialType value in array or slice literal (gotype)

resources/virt.go:471:33:error: cannot use libvirt.DOMAIN_START_PAUSED (constant unknown with invalid type) as github.com/libvirt/libvirt-go.DomainCreateFlags value in argument to dom.CreateWithFlags (gotype)

resources/virt.go:536:33:error: cannot use libvirt.DOMAIN_START_PAUSED (constant unknown with invalid type) as github.com/libvirt/libvirt-go.DomainCreateFlags value in argument to dom.CreateWithFlags (gotype)

resources/virt.go:649:31:error: cannot use libvirt.DOMAIN_VCPU_GUEST (constant unknown with invalid type) as github.com/libvirt/libvirt-go.DomainVcpuFlags value in argument to dom.GetVcpusFlags (gotype)

resources/virt.go:658:42:error: cannot use libvirt.DOMAIN_VCPU_GUEST (constant unknown with invalid type) as github.com/libvirt/libvirt-go.DomainVcpuFlags value in argument to dom.SetVcpusFlags (gotype)

resources/virt.go:793:34:error: cannot use libvirt.DOMAIN_XML_INACTIVE (constant unknown with invalid type) as github.com/libvirt/libvirt-go.DomainXMLFlags value in argument to dom.GetXMLDesc (gotype)

unable to run libvirt-go in docker container

I'm trying to get list of vm's running on my hypervisor using the binary generated from the below snippet

import (
   "log"
    libvirt "github.com/libvirt/libvirt-go"
)
func main(){
	conn, err := libvirt.NewConnect("qemu+unix:///system?socket=/run/libvirt/libvirt-sock")
	if err != nil {
		log.Printf("Error %v",err)
	}
	defer conn.Close()

	doms, err := conn.ListAllDomains(libvirt.CONNECT_LIST_DOMAINS_RUNNING)
	if err != nil {
		log.Printf("Error %v",err)
	}

	log.Printf("%d running domains:\n", len(doms))
	for _, dom := range doms {
		name, err := dom.GetName()
		if err == nil {
			log.Printf("  %s\n", name)
		}
		dom.Free()
	}
}

I'm running the container(ubuntu:16.04) as
docker run --privileged -it -v /run/libvirt/libvirt-sock:/run/libvirt/libvirt-sock -v /var/lib/libvirt/:/var/lib/libvirt/ <container-name> /<binary-of-above-code> and I see the following error
/<binary-of-above-code>: error while loading shared libraries: libvirt-lxc.so.0: cannot open shared object file: No such file or directory

any help would be much appreciated, should I install libvirt on the docker container as well ?

compilation failure

While updating my project, compilation failed with the following:

# github.com/libvirt/libvirt-go
go/src/github.com/libvirt/libvirt-go/network_port.go:126: not enough arguments to return
	have (Error)
	want (string, error)

A string is missing for the first arguement of the return:
return makeNotImplementedError("virNetworkPortDelete")

I'm a bit surprised to see this error that seems related to an 8 days old commit. Should I be scared? :)

Edit: I've just seen the Travis badge switching from "pass" to "failed", I'm a bit reassured ;)

add QemuAgentCommand function

For adding QemuAgentCommand function, the following code is added:

diff --git a/domain.go b/domain.go
index 7c02de2..f3ab9e1 100644
--- a/domain.go
+++ b/domain.go
@@ -455,6 +455,16 @@ const (
        DOMAIN_QEMU_MONITOR_COMMAND_HMP     = DomainQemuMonitorCommandFlags(C.VIR_DOMAIN_QEMU_MONITOR_COMMAND_HMP)
 )

+type DomainQemuAgentCommandTimeoutValues int
+
+const (
+       DOMAIN_QEMU_AGENT_COMMAND_MIN      = DomainQemuMonitorCommandFlags(C.VIR_DOMAIN_QEMU_AGENT_COMMAND_MIN)
+       DOMAIN_QEMU_AGENT_COMMAND_BLOCK    = DomainQemuMonitorCommandFlags(C.VIR_DOMAIN_QEMU_AGENT_COMMAND_BLOCK)
+       DOMAIN_QEMU_AGENT_COMMAND_DEFAULT  = DomainQemuMonitorCommandFlags(C.VIR_DOMAIN_QEMU_AGENT_COMMAND_DEFAULT)
+       DOMAIN_QEMU_AGENT_COMMAND_NOWAIT   = DomainQemuMonitorCommandFlags(C.VIR_DOMAIN_QEMU_AGENT_COMMAND_NOWAIT)
+       DOMAIN_QEMU_AGENT_COMMAND_SHUTDOWN = DomainQemuMonitorCommandFlags(C.VIR_DOMAIN_QEMU_AGENT_COMMAND_SHUTDOWN)
+)
+
 type DomainProcessSignal int

 const (
@@ -1743,6 +1753,20 @@ func (d *Domain) QemuMonitorCommand(command string, flags DomainQemuMonitorComma
        return rstring, nil
 }

+func (d *Domain) QemuAgentCommand(command string, timeout DomainQemuAgentCommandTimeoutValues, flags int) (string, error) {
+       cCommand := C.CString(command)
+       defer C.free(unsafe.Pointer(cCommand))
+       result := C.virDomainQemuAgentCommand(d.ptr, cCommand, C.int(timeout), C.uint(flags))
+
+       if result == nil {
+               return "", GetLastError()
+       }
+
+       rstring := C.GoString(result)
+       C.free(unsafe.Pointer(result))
+       return rstring, nil
+}
+
 func (d *Domain) PinVcpu(vcpu uint, cpuMap []bool) error {
        maplen := (len(cpuMap) + 7) / 8
        ccpumap := make([]C.uchar, maplen)

I have one questions need your help! what is flags meaning in origin C function virDomainQemuAgentCommand?

Can't compile on Debian10

I use Debian 10. My libvirt version is 5.0.0. libvirt-dev is already the newest version (5.0.0-4+deb10u1). Virsh is working. When I add "github.com/libvirt/libvirt-go" to my project it says, for instance Connect not declared by package libvirt. What could it be? thanks

Accessing Connect.IsAlive()'s error segfaults

When checking if the connection to libvirt is alive with func (*Connect) IsAlive if libvirtd was stopped after opening the connection, accessing the returned error segfaults the application.

Example: https://play.golang.org/p/Yhh9bHcuwkh

Output:

[signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x4c39da]

goroutine 1 [running]:
main.main()
        /path/main.go:23 +0x9a
exit status 2

Calling IsAlive() works fine, but accessing the returned error segfaults.

Possible recent regression?

Are these build errors due to something that regressed recently in git master here, or something elsewhere? We build at least daily and an mgmt user/hacker saw them in the build logs:

could not determine kind of name for C.VIR_PERF_PARAM_ALIGNMENT_FAULTS
could not determine kind of name for C.VIR_PERF_PARAM_REF_EMULATION_FAULTS

https://travis-ci.org/taksuyu/mgmt/jobs/208767587

Thanks,
James

Inclusion of libvirt-go package makes LibVMI initialization fail

I am facing this issue while using libvirt-go with LibVMI in KVM. My Go code looks exactly like below.

package main

/*
#include <libvmi/libvmi.h>

int initialize_libvmi_complete(vmi_instance_t *vmi){

 return vmi_init_complete(&vmi, "Test-VM", VMI_INIT_DOMAINNAME, NULL, VMI_CONFIG_GLOBAL_FILE_ENTRY, NULL, NULL);
}
*/


import "C"

import (
    _"github.com/rgbkrk/libvirt-go"
)

func main() {
  var vmi C.vmi_instance_t
  C.initialize_libvmi_complete(&vmi);
}

The code fails in LibVMI API vmi_init_complete() function when the function internally makes a call to virConnectOpenAuth api (ref). The above code works fine if I just remove the import of _"github.com/rgbkrk/libvirt-go" package. I am having a feeling that the go package is holding some connection to qemu:///system and hence LibVMI fails when it tries to connect. I am hoping the experts could give some direction for more debugging.

Did git master just break?

# github.com/libvirt/libvirt-go

/tmp/go-build756541303/github.com/libvirt/libvirt-go/_obj/stream_cfuncs.cgo2.o: In function `virStreamSparseSendAll_cgo':

../../libvirt/libvirt-go/stream_cfuncs.go:95: undefined reference to `assert'

/tmp/go-build756541303/github.com/libvirt/libvirt-go/_obj/stream_cfuncs.cgo2.o: In function `virStreamSparseRecvAll_cgo':

../../libvirt/libvirt-go/stream_cfuncs.go:112: undefined reference to `assert'

collect2: error: ld returned 1 exit status

Or is it my fault somehow? Thanks

Wrong value mapping in SetBlockIoTune

I'm calling

SetBlockIoTune(params.Target.Dev, &blkioparams, libvirt.DOMAIN_AFFECT_LIVE)

with blkioparams (only 4 values have Set: true):

{TotalBytesSecSet:false TotalBytesSec:0 ReadBytesSecSet:true ReadBytesSec:1000000 WriteBytesSecSet:true WriteBytesSec:1000000 TotalIopsSecSet:false TotalIopsSec:0 ReadIopsSecSet:true ReadIopsSec:100 WriteIopsSecSet:true WriteIopsSec:100 TotalBytesSecMaxSet:false TotalBytesSecMax:0 ReadBytesSecMaxSet:false ReadBytesSecMax:0 WriteBytesSecMaxSet:false WriteBytesSecMax:0 TotalIopsSecMaxSet:false TotalIopsSecMax:0 ReadIopsSecMaxSet:false ReadIopsSecMax:0 WriteIopsSecMaxSet:false WriteIopsSecMax:0 TotalBytesSecMaxLengthSet:false TotalBytesSecMaxLength:0 ReadBytesSecMaxLengthSet:false ReadBytesSecMaxLength:0 WriteBytesSecMaxLengthSet:false WriteBytesSecMaxLength:0 TotalIopsSecMaxLengthSet:false TotalIopsSecMaxLength:0 ReadIopsSecMaxLengthSet:false ReadIopsSecMaxLength:0 WriteIopsSecMaxLengthSet:false WriteIopsSecMaxLength:0 SizeIopsSecSet:false SizeIopsSec:0 GroupNameSet:false GroupName:}

but in libvirtd debug i see following parameters:

2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10394 : dom=0x7f30780009e0, (VM: name=test-domain, uuid=e1efe098-d661-4de9-acc1-3d0f2b54f089), disk=sda, params=0x7f30780
011a0, nparams=20, flags=0
2017-06-19 14:35:33.575+0000: 19912: debug : virEventPollMakePollFDs:401 : Prepare n=3 w=4, f=12 e=1 d=0
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["total_bytes_sec"]=(ullong)0
2017-06-19 14:35:33.575+0000: 19912: debug : virEventPollMakePollFDs:401 : Prepare n=4 w=5, f=13 e=1 d=0
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["read_bytes_sec"]=(ullong)1000000
2017-06-19 14:35:33.575+0000: 19912: debug : virEventPollMakePollFDs:401 : Prepare n=5 w=6, f=15 e=1 d=0
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["write_bytes_sec"]=(ullong)1000000
2017-06-19 14:35:33.575+0000: 19912: debug : virEventPollMakePollFDs:401 : Prepare n=6 w=7, f=14 e=1 d=0
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["total_iops_sec"]=(ullong)0
2017-06-19 14:35:33.575+0000: 19912: debug : virEventPollMakePollFDs:401 : Prepare n=7 w=8, f=16 e=0 d=0
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["read_iops_sec"]=(ullong)100
2017-06-19 14:35:33.575+0000: 19912: debug : virEventPollMakePollFDs:401 : Prepare n=8 w=9, f=16 e=1 d=0
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["write_iops_sec"]=(ullong)100
2017-06-19 14:35:33.575+0000: 19912: debug : virEventPollMakePollFDs:401 : Prepare n=9 w=10, f=20 e=1 d=0
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["total_bytes_sec_max"]=(ullong)0
2017-06-19 14:35:33.575+0000: 19912: debug : virEventPollMakePollFDs:401 : Prepare n=10 w=11, f=22 e=25 d=0
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["read_bytes_sec_max"]=(ullong)100000
2017-06-19 14:35:33.575+0000: 19912: debug : virEventPollMakePollFDs:401 : Prepare n=11 w=13, f=23 e=1 d=0
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["write_bytes_sec_max"]=(ullong)100000
2017-06-19 14:35:33.575+0000: 19912: debug : virEventPollMakePollFDs:401 : Prepare n=12 w=21, f=24 e=1 d=0
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["total_iops_sec_max"]=(ullong)0
2017-06-19 14:35:33.575+0000: 19912: debug : virEventPollCalculateTimeout:338 : Calculate expiry of 2 timers
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["read_iops_sec_max"]=(ullong)10
2017-06-19 14:35:33.575+0000: 19912: debug : virEventPollCalculateTimeout:371 : No timeout is pending
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["write_iops_sec_max"]=(ullong)10
2017-06-19 14:35:33.575+0000: 19912: info : virEventPollRunOnce:640 : EVENT_POLL_RUN: nhandles=12 timeout=-1
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["size_iops_sec"]=(ullong)0
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["group_name"]=(string)drive-scsi0-0-0-0
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["total_bytes_sec_max_length"]=(ullong)0
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["read_bytes_sec_max_length"]=(ullong)1
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["write_bytes_sec_max_length"]=(ullong)1
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["total_iops_sec_max_length"]=(ullong)0
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["read_iops_sec_max_length"]=(ullong)1
2017-06-19 14:35:33.575+0000: 19917: debug : virDomainSetBlockIoTune:10395 : params["write_iops_sec_max_length"]=(ullong)1

Tag releases

Hey!

It would be convenient to tag releases (like for other bindings). People using "go get" don't care much, but people using other package managers may find this useful (and distribution packagers too).

Should the bindings be locked to a thread when executing libvirt commands?

I wonder if the library has to use LockOSThread when calling the c-bindings.

In kubevirt we repeatedly see libvirt errors like virError(Code=0, Domain=0, Message='Missing error'. It looks like they may happen when between the actual libvirt call and fetching the libvirt error with GetLastError(), goroutine switches happen. I have the suspicion because GetLastError retrieves the error from a thread-local location.

Domain block copy function doesn't work

Domain block copy function doesn't work. Behaviour of this function doesn't change even if I change params.

`
from := fmt.Sprintf("%s/disks/%s.img", ct.StoragePath, domainuuid)
to := fmt.Sprintf("%s/backups/%s_%d.img", ct.StoragePath, domainuuid, time.Now().Unix())

params := libvirt.DomainBlockCopyParameters{
	BandwidthSet:   true,
	Bandwidth:      2147483648,
	GranularitySet: true,
	Granularity:    512,
}

xmlTmpl := fmt.Sprintf("<disk type='file'>
<driver type='qcow2'/>
<source file='%s'/>
</disk>", to)

// Undefine if domain is not transient
//err = domain.Undefine()
//if err != nil {
//	ct.Log.Error(err)
//	return false, err
//}

err = domain.BlockCopy(from, xmlTmpl, &params, libvirt.DOMAIN_BLOCK_COPY_SHALLOW)
if err != nil {
	ct.Log.Error(err)
	return false, err
}

`

`SIGABRT: abort
PC=0x7f8c805a5428 m=10
signal arrived during cgo execution

goroutine 24 [syscall, locked to thread]:
runtime.cgocall(0x8ceb50, 0xc820045318, 0xc800000000)
/usr/lib/go-1.6/src/runtime/cgocall.go:123 +0x11b fp=0xc8200452e0 sp=0xc8200452b0
github.com/libvirt/libvirt-go._Cfunc_free(0x7f8c5c000b50)
??:0 +0x36 fp=0xc820045318 sp=0xc8200452e0
github.com/libvirt/libvirt-go.(*Domain).BlockCopy(0xc820154070, 0xc82012a5c0, 0x39, 0xc82014c240, 0x8c, 0xc820128870, 0x1, 0x7f8c6ee634f0, 0xc8201288d0)
/root/development/projects/vs-agent/vendor/src/github.com/libvirt/libvirt-go/domain.go:1966 +0x55f fp=0xc820045440 sp=0xc820045318
main.DomainBackup(0xc820073ce0, 0x24, 0x0, 0x0, 0x0)
/root/development/projects/vs-agent/src/vs-agent/domain.go:303 +0xa3f fp=0xc820045620 sp=0xc820045440
runtime.call64(0xc82012a580, 0xbfb730, 0xc820128840, 0x1000000028)
/usr/lib/go-1.6/src/runtime/asm_amd64.s:473 +0x3e fp=0xc820045668 sp=0xc820045620
reflect.Value.call(0x9b8400, 0xbfb730, 0x13, 0xad92b8, 0x4, 0xc82012e8a0, 0x1, 0x1, 0x0, 0x0, ...)
/usr/lib/go-1.6/src/reflect/value.go:435 +0x120d fp=0xc8200459b8 sp=0xc820045668
reflect.Value.Call(0x9b8400, 0xbfb730, 0x13, 0xc82012e8a0, 0x1, 0x1, 0x0, 0x0, 0x0)
/usr/lib/go-1.6/src/reflect/value.go:303 +0xb1 fp=0xc820045a18 sp=0xc8200459b8
github.com/RichardKnop/machinery/v1.TryCall(0x9b8400, 0xbfb730, 0x13, 0xc82012e8a0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, ...)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/worker.go:249 +0xef fp=0xc820045a98 sp=0xc820045a18
github.com/RichardKnop/machinery/v1.(*Worker).Process(0xc820100200, 0xc8200e42c0, 0x0, 0x0)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/worker.go:91 +0x64a fp=0xc820045bd8 sp=0xc820045a98
github.com/RichardKnop/machinery/v1/brokers.(*AMQPBroker).consumeOne(0xc8201040c0, 0x7f8c8136cb38, 0xc820184100, 0x0, 0xc82019a020, 0x10, 0x0, 0x0, 0x2, 0x0, ...)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/brokers/amqp.go:175 +0x5ba fp=0xc820045e18 sp=0xc820045bd8
github.com/RichardKnop/machinery/v1/brokers.(*AMQPBroker).consume.func2(0xc8201040c0, 0xc820096640, 0x7f8c6ee5e000, 0xc820100200, 0xc82006d140, 0x5, 0xc82006d0e0)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/brokers/amqp.go:207 +0x77 fp=0xc820045f68 sp=0xc820045e18
runtime.goexit()
/usr/lib/go-1.6/src/runtime/asm_amd64.s:1998 +0x1 fp=0xc820045f70 sp=0xc820045f68
created by github.com/RichardKnop/machinery/v1/brokers.(*AMQPBroker).consume
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/brokers/amqp.go:212 +0x277

goroutine 1 [chan receive]:
main.main()
/root/development/projects/vs-agent/src/vs-agent/main.go:60 +0x5bf

goroutine 17 [syscall, locked to thread]:
runtime.goexit()
/usr/lib/go-1.6/src/runtime/asm_amd64.s:1998 +0x1

goroutine 20 [syscall]:
os/signal.signal_recv(0x0)
/usr/lib/go-1.6/src/runtime/sigqueue.go:116 +0x132
os/signal.loop()
/usr/lib/go-1.6/src/os/signal/signal_unix.go:22 +0x18
created by os/signal.init.1
/usr/lib/go-1.6/src/os/signal/signal_unix.go:28 +0x37

goroutine 21 [chan receive]:
vs-agent/context.virtConnect(0xc82006cf00)
/root/development/projects/vs-agent/src/vs-agent/context/context.go:103 +0x5c
created by vs-agent/context.NewContext.func1
/root/development/projects/vs-agent/src/vs-agent/context/context.go:78 +0x4e4

goroutine 34 [syscall, locked to thread]:
github.com/libvirt/libvirt-go._Cfunc_virEventRunDefaultImpl(0x7f8c00000000)
??:0 +0x45
github.com/libvirt/libvirt-go.EventRunDefaultImpl(0x0, 0x0)
/root/development/projects/vs-agent/vendor/src/github.com/libvirt/libvirt-go/events.go:53 +0x28
vs-agent/context.libvirtEvents(0xc82006cf00)
/root/development/projects/vs-agent/src/vs-agent/context/context.go:148 +0x178
created by vs-agent/context.NewContext.func1
/root/development/projects/vs-agent/src/vs-agent/context/context.go:88 +0x549

goroutine 35 [chan receive]:
github.com/RichardKnop/machinery/v1.(*Worker).Launch(0xc820100160, 0x0, 0x0)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/worker.go:50 +0x11a6
created by main.main
/root/development/projects/vs-agent/src/vs-agent/main.go:52 +0x35b

goroutine 36 [chan receive]:
github.com/RichardKnop/machinery/v1.(*Worker).Launch(0xc820100200, 0x0, 0x0)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/worker.go:50 +0x11a6
created by main.main
/root/development/projects/vs-agent/src/vs-agent/main.go:53 +0x384

goroutine 37 [chan receive]:
github.com/RichardKnop/machinery/v1.(*Worker).Launch(0xc8201000c0, 0x0, 0x0)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/worker.go:50 +0x11a6
created by main.main
/root/development/projects/vs-agent/src/vs-agent/main.go:54 +0x3ad

goroutine 38 [select, locked to thread]:
runtime.gopark(0xbfbf18, 0xc8200fa728, 0xade0b8, 0x6, 0x18, 0x2)
/usr/lib/go-1.6/src/runtime/proc.go:262 +0x163
runtime.selectgoImpl(0xc8200fa728, 0x0, 0x18)
/usr/lib/go-1.6/src/runtime/select.go:392 +0xa67
runtime.selectgo(0xc8200fa728)
/usr/lib/go-1.6/src/runtime/select.go:215 +0x12
runtime.ensureSigM.func1()
/usr/lib/go-1.6/src/runtime/signal1_unix.go:279 +0x358
runtime.goexit()
/usr/lib/go-1.6/src/runtime/asm_amd64.s:1998 +0x1

goroutine 50 [select]:
github.com/RichardKnop/machinery/v1/brokers.(*AMQPBroker).consume(0xc8201040c0, 0xc82006d020, 0x7f8c6ee5e000, 0xc820100200, 0x0, 0x0)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/brokers/amqp.go:196 +0x2d5
github.com/RichardKnop/machinery/v1/brokers.(*AMQPBroker).StartConsuming(0xc8201040c0, 0xb6c1c0, 0x18, 0x7f8c6ee5e000, 0xc820100200, 0x0, 0x0, 0x0)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/brokers/amqp.go:88 +0x7bd
github.com/RichardKnop/machinery/v1.(*Worker).Launch.func1(0x7f8c81324000, 0xc8201040c0, 0xc820100200, 0xc820132060)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/worker.go:39 +0xa0
created by github.com/RichardKnop/machinery/v1.(*Worker).Launch
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/worker.go:48 +0x116d

goroutine 3 [select]:
github.com/RichardKnop/machinery/v1/brokers.(*AMQPBroker).consume(0xc820104080, 0xc820132660, 0x7f8c6ee5e000, 0xc820100160, 0x0, 0x0)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/brokers/amqp.go:196 +0x2d5
github.com/RichardKnop/machinery/v1/brokers.(*AMQPBroker).StartConsuming(0xc820104080, 0xb6c1e0, 0x18, 0x7f8c6ee5e000, 0xc820100160, 0x0, 0x0, 0x0)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/brokers/amqp.go:88 +0x7bd
github.com/RichardKnop/machinery/v1.(*Worker).Launch.func1(0x7f8c81324000, 0xc820104080, 0xc820100160, 0xc820130060)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/worker.go:39 +0xa0
created by github.com/RichardKnop/machinery/v1.(*Worker).Launch
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/worker.go:48 +0x116d

goroutine 39 [select]:
github.com/RichardKnop/machinery/v1/brokers.(*AMQPBroker).consume(0xc820104000, 0xc820130480, 0x7f8c6ee5e000, 0xc8201000c0, 0x0, 0x0)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/brokers/amqp.go:196 +0x2d5
github.com/RichardKnop/machinery/v1/brokers.(*AMQPBroker).StartConsuming(0xc820104000, 0xb6c200, 0x1c, 0x7f8c6ee5e000, 0xc8201000c0, 0x0, 0x0, 0x0)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/brokers/amqp.go:88 +0x7bd
github.com/RichardKnop/machinery/v1.(*Worker).Launch.func1(0x7f8c81324000, 0xc820104000, 0xc8201000c0, 0xc82010c180)
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/worker.go:39 +0xa0
created by github.com/RichardKnop/machinery/v1.(*Worker).Launch
/root/development/projects/vs-agent/vendor/src/github.com/RichardKnop/machinery/v1/worker.go:48 +0x116d

goroutine 40 [IO wait]:
net.runtime_pollWait(0x7f8c6ee5ef20, 0x72, 0xc820163000)
/usr/lib/go-1.6/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc820152060, 0x72, 0x0, 0x0)
/usr/lib/go-1.6/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc820152060, 0x0, 0x0)
/usr/lib/go-1.6/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc820152000, 0xc820163000, 0x1000, 0x1000, 0x0, 0x7f8c81364028, 0xc82006e0a0)
/usr/lib/go-1.6/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc820160000, 0xc820163000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
/usr/lib/go-1.6/src/net/net.go:172 +0xe4
bufio.(*Reader).fill(0xc82010c3c0)
/usr/lib/go-1.6/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).Read(0xc82010c3c0, 0xc82012cc68, 0x7, 0x7, 0x1, 0x0, 0x0)
/usr/lib/go-1.6/src/bufio/bufio.go:207 +0x260
io.ReadAtLeast(0x7f8c81324210, 0xc82010c3c0, 0xc82012cc68, 0x7, 0x7, 0x7, 0x0, 0x0, 0x0)
/usr/lib/go-1.6/src/io/io.go:297 +0xe6
io.ReadFull(0x7f8c81324210, 0xc82010c3c0, 0xc82012cc68, 0x7, 0x7, 0xc82010c360, 0x0, 0x0)
/usr/lib/go-1.6/src/io/io.go:315 +0x62
github.com/streadway/amqp.(*reader).ReadFrame(0xc820149ee0, 0x0, 0x0, 0x0, 0x0)
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/read.go:49 +0xbd
github.com/streadway/amqp.(*Connection).reader(0xc82010a360, 0x7f8c81324178, 0xc820160000)
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/connection.go:503 +0x172
created by github.com/streadway/amqp.Open
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/connection.go:221 +0x3e8

goroutine 52 [IO wait]:
net.runtime_pollWait(0x7f8c6ee5efe0, 0x72, 0xc82016a000)
/usr/lib/go-1.6/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc82014e060, 0x72, 0x0, 0x0)
/usr/lib/go-1.6/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc82014e060, 0x0, 0x0)
/usr/lib/go-1.6/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc82014e000, 0xc82016a000, 0x1000, 0x1000, 0x0, 0x7f8c81364028, 0xc82006e0a0)
/usr/lib/go-1.6/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc820154008, 0xc82016a000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
/usr/lib/go-1.6/src/net/net.go:172 +0xe4
bufio.(*Reader).fill(0xc82010c420)
/usr/lib/go-1.6/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).Read(0xc82010c420, 0xc82019a037, 0x7, 0x7, 0x0, 0x0, 0x0)
/usr/lib/go-1.6/src/bufio/bufio.go:207 +0x260
io.ReadAtLeast(0x7f8c81324210, 0xc82010c420, 0xc82019a037, 0x7, 0x7, 0x7, 0x0, 0x0, 0x0)
/usr/lib/go-1.6/src/io/io.go:297 +0xe6
io.ReadFull(0x7f8c81324210, 0xc82010c420, 0xc82019a037, 0x7, 0x7, 0xc820132240, 0x0, 0x0)
/usr/lib/go-1.6/src/io/io.go:315 +0x62
github.com/streadway/amqp.(*reader).ReadFrame(0xc820173ee0, 0x0, 0x0, 0x0, 0x0)
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/read.go:49 +0xbd
github.com/streadway/amqp.(*Connection).reader(0xc820168000, 0x7f8c81324178, 0xc820154008)
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/connection.go:503 +0x172
created by github.com/streadway/amqp.Open
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/connection.go:221 +0x3e8

goroutine 53 [IO wait]:
net.runtime_pollWait(0x7f8c6ee5ee60, 0x72, 0xc82016c000)
/usr/lib/go-1.6/src/runtime/netpoll.go:160 +0x60
net.(*pollDesc).Wait(0xc820150060, 0x72, 0x0, 0x0)
/usr/lib/go-1.6/src/net/fd_poll_runtime.go:73 +0x3a
net.(*pollDesc).WaitRead(0xc820150060, 0x0, 0x0)
/usr/lib/go-1.6/src/net/fd_poll_runtime.go:78 +0x36
net.(*netFD).Read(0xc820150000, 0xc82016c000, 0x1000, 0x1000, 0x0, 0x7f8c81364028, 0xc82006e0a0)
/usr/lib/go-1.6/src/net/fd_unix.go:250 +0x23a
net.(*conn).Read(0xc820154018, 0xc82016c000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
/usr/lib/go-1.6/src/net/net.go:172 +0xe4
bufio.(*Reader).fill(0xc820132420)
/usr/lib/go-1.6/src/bufio/bufio.go:97 +0x1e9
bufio.(*Reader).Read(0xc820132420, 0xc82000ef38, 0x7, 0x7, 0x6, 0x0, 0x0)
/usr/lib/go-1.6/src/bufio/bufio.go:207 +0x260
io.ReadAtLeast(0x7f8c81324210, 0xc820132420, 0xc82000ef38, 0x7, 0x7, 0x7, 0x0, 0x0, 0x0)
/usr/lib/go-1.6/src/io/io.go:297 +0xe6
io.ReadFull(0x7f8c81324210, 0xc820132420, 0xc82000ef38, 0x7, 0x7, 0xc8201323c0, 0x0, 0x0)
/usr/lib/go-1.6/src/io/io.go:315 +0x62
github.com/streadway/amqp.(*reader).ReadFrame(0xc820145ee0, 0x0, 0x0, 0x0, 0x0)
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/read.go:49 +0xbd
github.com/streadway/amqp.(*Connection).reader(0xc820168120, 0x7f8c81324178, 0xc820154018)
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/connection.go:503 +0x172
created by github.com/streadway/amqp.Open
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/connection.go:221 +0x3e8

goroutine 41 [select]:
github.com/streadway/amqp.(*Connection).heartbeater(0xc82010a360, 0x2540be400, 0xc82010c480)
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/connection.go:533 +0x506
created by github.com/streadway/amqp.(*Connection).openTune
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/connection.go:754 +0x805

goroutine 4 [select]:
github.com/streadway/amqp.(*Connection).heartbeater(0xc820168000, 0x2540be400, 0xc820130120)
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/connection.go:533 +0x506
created by github.com/streadway/amqp.(*Connection).openTune
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/connection.go:754 +0x805

goroutine 54 [select]:
github.com/streadway/amqp.(*Connection).heartbeater(0xc820168120, 0x2540be400, 0xc820132480)
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/connection.go:533 +0x506
created by github.com/streadway/amqp.(*Connection).openTune
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/connection.go:754 +0x805

goroutine 55 [chan receive]:
github.com/streadway/amqp.bufferDeliveries(0xc8201326c0, 0xc820132660)
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/consumers.go:38 +0x7b
created by github.com/streadway/amqp.(*consumers).add
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/consumers.go:74 +0x10b

goroutine 6 [chan receive]:
github.com/streadway/amqp.bufferDeliveries(0xc8201304e0, 0xc820130480)
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/consumers.go:38 +0x7b
created by github.com/streadway/amqp.(*consumers).add
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/consumers.go:74 +0x10b

goroutine 22 [chan receive]:
github.com/streadway/amqp.bufferDeliveries(0xc82006d080, 0xc82006d020)
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/consumers.go:38 +0x7b
created by github.com/streadway/amqp.(*consumers).add
/root/development/projects/vs-agent/vendor/src/github.com/streadway/amqp/consumers.go:74 +0x10b

rax 0x0
rbx 0x55
rcx 0x7f8c805a5428
rdx 0x6
rdi 0x7c5a
rsi 0x7c62
rbp 0x7f8c6de5ab10
rsp 0x7f8c6de5a778
r8 0x10
r9 0x400
r10 0x8
r11 0x206
r12 0x55
r13 0x7f8c6de5a928
r14 0x7f8c6de5a928
r15 0x2
rip 0x7f8c805a5428
rflags 0x206
cs 0x33
fs 0x0
gs 0x0`

Add getDomain functions as exportables

Below is list of functions that needs to be exported

func getDomainStatsBalloonFieldInfo

func getDomainStatsVcpuFieldInfo

func getDomainStatsNetFieldInfo

func getDomainStatsBlockFieldInfo

func getDomainStatsPerfFieldInfo

func getDomainStatsLengthsFieldInfo

func getMemoryParameterFieldInfo

func getDomainStatsStateFieldInfo

func getDomainStatsCPUFieldInfo

func getDomainStatsLengthsFieldInfo

How to build windows app on mac

After running

CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o zagent.exe cmd/test/main.go

I got

cmd/test/main.go:11:22: undefined: libvirt.NewConnect

Thank you for your attention, below is the codes:

package main

import (
    _logUtils "github.com/easysoft/zagent/internal/pkg/lib/log"
    "github.com/libvirt/libvirt-go"
)

func main() {
    connStr := ""

    LibvirtConn, err := libvirt.NewConnect(connStr)
    if err != nil {
	    _logUtils.Errorf(err.Error())
	    return
    }

    active, err := LibvirtConn.IsAlive()
    if err != nil {
	    _logUtils.Errorf(err.Error())
	    return
    }
    if !active {
	    _logUtils.Errorf("not active")
    }
}

Development status of repository

It would help people evaluate the repository if the development status of code base is mentioned in the readme (alpha, beta, production-stable, etc). Thanks.

static compilation

Hi,

Building a binary using libvirt-go adds a bunch of dependencies to shared objects.
Is it possible to build statically to remove all these dependencies ?

Just to be clear I first installed libvirt-devel package.

So, when I build my project without using libvirt-go:

go build -v -ldflags '-s -w -extldflags "-static"' ./cmd/project/main.go
ldd main
	linux-vdso.so.1 =>  (0x00007ffc6af7f000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fa091f86000)
	libc.so.6 => /lib64/libc.so.6 (0x00007fa091bb8000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fa0921a2000)

using libvirt-go:

go build -v -ldflags '-s -w' ./cmd/project/main.go 
ldd main
	linux-vdso.so.1 =>  (0x00007ffd109ba000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f306fa18000)
	libvirt-lxc.so.0 => /lib64/libvirt-lxc.so.0 (0x00007f306f814000)
	libvirt-qemu.so.0 => /lib64/libvirt-qemu.so.0 (0x00007f306f610000)
	libvirt.so.0 => /lib64/libvirt.so.0 (0x00007f306f031000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f306ec63000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f306fc34000)
	libcap-ng.so.0 => /lib64/libcap-ng.so.0 (0x00007f306ea5d000)
	libyajl.so.2 => /lib64/libyajl.so.2 (0x00007f306e853000)
...
	libffi.so.6 => /lib64/libffi.so.6 (0x00007f30666f8000)
	libssl.so.10 => /lib64/libssl.so.10 (0x00007f3066486000)
	libcrypto.so.10 => /lib64/libcrypto.so.10 (0x00007f3066023000)
	libelf.so.1 => /lib64/libelf.so.1 (0x00007f3065e0b000)
	libbz2.so.1 => /lib64/libbz2.so.1 (0x00007f3065bfb000)

(around 70 lines, but I shortened the content)

When I try to compile statically, I get:

go build -v -ldflags '-s -w -extldflags "-static"' ./cmd/project/main.go 
# command-line-arguments
/usr/lib/golang/pkg/tool/linux_amd64/link: running gcc failed: exit status 1
/usr/bin/ld: cannot find -lpthread
/usr/bin/ld: cannot find -lvirt-lxc
/usr/bin/ld: cannot find -lvirt-lxc
/usr/bin/ld: cannot find -lvirt-qemu
/usr/bin/ld: cannot find -lvirt-qemu
/usr/bin/ld: cannot find -lvirt
/usr/bin/ld: cannot find -lc
collect2: error: ld returned 1 exit status

I'm stuck here, I can't find any static version of libvirt ?
I currently work with a CentOS Linux release 7.7.1908 (Core)

Thank you and have a good day :)

undefined: Connect,Domain,Interface ..

ENV

  • distro: 4.16.2-2-ARCH

  • (libvirt) 4.2.0

  • go1.10.1 linux/amd64

Problem

$ go get -u github.com/libvirt/libvirt-go

$ go test -tags api github.com/libvirt/libvirt-go

 github.com/libvirt/libvirt-go
./connect_test.go:35:29: undefined: Connect
./domain_test.go:35:26: undefined: Domain
./domain_test.go:35:35: undefined: Connect
./domain_test.go:50:29: undefined: Domain
./domain_test.go:50:38: undefined: Connect
./domain_test.go:66:35: undefined: Domain
./domain_test.go:66:44: undefined: Connect
./interface_test.go:35:39: undefined: Interface
./interface_test.go:35:51: undefined: Connect
./network_test.go:51:41: undefined: Network
./network_test.go:51:41: too many errors
FAIL	github.com/libvirt/libvirt-go [build failed]

Trying to shed some light on this, andy help would be great.

ref: dmacvicar/terraform-provider-libvirt#280

How to list block devices for domain

Is there a method I cannot find for listing all block devices of a libvirt domain?

For network interfaces I found func (d *Domain) ListAllInterfaceAddresses(src DomainInterfaceAddressesSource) ([]DomainInterface, error) and I'm wondering if there's a similar function for block devices?

Thanks in advance!

Building static Binary

Hello,

it is possible to build a static binary with this bindings?

i try to build a static binary with following code(just as a example):

package main

import (
	"fmt"

	rhlibvirt "github.com/libvirt/libvirt-go"
)

func getContainers() (containers []string) {

	conn, err := rhlibvirt.NewConnect("lxc:///")
	if err != nil {
		fmt.Println("unable get libvirt connection")
	}
	defer conn.Close()

	doms, err := conn.ListAllDomains(rhlibvirt.CONNECT_LIST_DOMAINS_ACTIVE)
	if err != nil {
		fmt.Println("unable list active domains")
	}

	for _, dom := range doms {
		name, err := dom.GetName()
		if err == nil {
			containers = append(containers, name)
		}
		dom.Free()
	}
	return containers
}

func main() {
	containers := getContainers()

	fmt.Println(containers)
}

building it normal works:

> go build -a libvirt.go
> ldd libvirt
        linux-vdso.so.1 =>  (0x00007ffebbabe000)
        libvirt-qemu.so.0 => /usr/lib/libvirt-qemu.so.0 (0x00007faa48a16000)
        libvirt.so.0 => /usr/lib/libvirt.so.0 (0x00007faa48443000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007faa48224000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007faa47e5a000)
        libcap-ng.so.0 => /usr/lib/x86_64-linux-gnu/libcap-ng.so.0 (0x00007faa47c55000)
        libyajl.so.2 => /usr/lib/x86_64-linux-gnu/libyajl.so.2 (0x00007faa47a49000)
        libnl-3.so.200 => /lib/x86_64-linux-gnu/libnl-3.so.200 (0x00007faa4782a000)
        libaudit.so.1 => /lib/x86_64-linux-gnu/libaudit.so.1 (0x00007faa47605000)
        libdevmapper.so.1.02.1 => /lib/x86_64-linux-gnu/libdevmapper.so.1.02.1 (0x00007faa473bb000)
        libnuma.so.1 => /usr/lib/x86_64-linux-gnu/libnuma.so.1 (0x00007faa471b0000)
        libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x00007faa4712f000)
        libxml2.so.2 => /usr/lib/x86_64-linux-gnu/libxml2.so.2 (0x00007faa46d76000)
        libavahi-common.so.3 => /usr/lib/x86_64-linux-gnu/libavahi-common.so.3 (0x00007faa46b6a000)
        libavahi-client.so.3 => /usr/lib/x86_64-linux-gnu/libavahi-client.so.3 (0x00007faa46959000)
        libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007faa4670c000)
        libgnutls-deb0.so.28 => /usr/lib/x86_64-linux-gnu/libgnutls-deb0.so.28 (0x00007faa463f0000)
        libsasl2.so.2 => /usr/lib/x86_64-linux-gnu/libsasl2.so.2 (0x00007faa461d5000)
        libcurl-gnutls.so.4 => /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4 (0x00007faa45f68000)
        libapparmor.so.1 => /lib/x86_64-linux-gnu/libapparmor.so.1 (0x00007faa45d58000)
        libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007faa45b55000)
        libxenlight-4.5.so => /usr/lib/x86_64-linux-gnu/libxenlight-4.5.so (0x00007faa458d3000)
        libxlutil-4.5.so => /usr/lib/x86_64-linux-gnu/libxlutil-4.5.so (0x00007faa456c4000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007faa454c0000)
        /lib64/ld-linux-x86-64.so.2 (0x0000559a554c5000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007faa451b7000)
        libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007faa44f93000)
        libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007faa44f73000)
        librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007faa44d6b000)
        liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007faa44b49000)
        libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x00007faa44866000)
        libicuuc.so.55 => /usr/lib/x86_64-linux-gnu/libicuuc.so.55 (0x00007faa444d2000)
        libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007faa442b8000)
        libp11-kit.so.0 => /usr/lib/x86_64-linux-gnu/libp11-kit.so.0 (0x00007faa44052000)
        libtasn1.so.6 => /usr/lib/x86_64-linux-gnu/libtasn1.so.6 (0x00007faa43e3f000)
        libnettle.so.6 => /usr/lib/x86_64-linux-gnu/libnettle.so.6 (0x00007faa43c09000)
        libhogweed.so.4 => /usr/lib/x86_64-linux-gnu/libhogweed.so.4 (0x00007faa439d5000)
        libgmp.so.10 => /usr/lib/x86_64-linux-gnu/libgmp.so.10 (0x00007faa43755000)
        libidn.so.11 => /usr/lib/x86_64-linux-gnu/libidn.so.11 (0x00007faa43522000)
        librtmp.so.1 => /usr/lib/x86_64-linux-gnu/librtmp.so.1 (0x00007faa43304000)
        libgssapi_krb5.so.2 => /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 (0x00007faa430ba000)
        liblber-2.4.so.2 => /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2 (0x00007faa42eab000)
        libldap_r-2.4.so.2 => /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2 (0x00007faa42c58000)
        libxenctrl-4.5.so => /usr/lib/x86_64-linux-gnu/libxenctrl-4.5.so (0x00007faa42a2c000)
        libxenguest-4.5.so => /usr/lib/x86_64-linux-gnu/libxenguest-4.5.so (0x00007faa427ff000)
        libxenstore.so.3.0 => /usr/lib/x86_64-linux-gnu/libxenstore.so.3.0 (0x00007faa425f5000)
        libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007faa423f0000)
        libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007faa42181000)
        libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007faa41f6e000)
        libicudata.so.55 => /usr/lib/x86_64-linux-gnu/libicudata.so.55 (0x00007faa404b6000)
        libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007faa40134000)
        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007faa3ff1d000)
        libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007faa3fd15000)
        libkrb5.so.3 => /usr/lib/x86_64-linux-gnu/libkrb5.so.3 (0x00007faa3fa42000)
        libk5crypto.so.3 => /usr/lib/x86_64-linux-gnu/libk5crypto.so.3 (0x00007faa3f813000)
        libcom_err.so.2 => /lib/x86_64-linux-gnu/libcom_err.so.2 (0x00007faa3f60e000)
        libkrb5support.so.0 => /usr/lib/x86_64-linux-gnu/libkrb5support.so.0 (0x00007faa3f403000)
        libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007faa3f1e8000)
        libgssapi.so.3 => /usr/lib/x86_64-linux-gnu/libgssapi.so.3 (0x00007faa3efa7000)
        libkeyutils.so.1 => /lib/x86_64-linux-gnu/libkeyutils.so.1 (0x00007faa3eda3000)
        libheimntlm.so.0 => /usr/lib/x86_64-linux-gnu/libheimntlm.so.0 (0x00007faa3eb99000)
        libkrb5.so.26 => /usr/lib/x86_64-linux-gnu/libkrb5.so.26 (0x00007faa3e90f000)
        libasn1.so.8 => /usr/lib/x86_64-linux-gnu/libasn1.so.8 (0x00007faa3e66c000)
        libhcrypto.so.4 => /usr/lib/x86_64-linux-gnu/libhcrypto.so.4 (0x00007faa3e438000)
        libroken.so.18 => /usr/lib/x86_64-linux-gnu/libroken.so.18 (0x00007faa3e223000)
        libwind.so.0 => /usr/lib/x86_64-linux-gnu/libwind.so.0 (0x00007faa3dffa000)
        libheimbase.so.1 => /usr/lib/x86_64-linux-gnu/libheimbase.so.1 (0x00007faa3ddea000)
        libhx509.so.5 => /usr/lib/x86_64-linux-gnu/libhx509.so.5 (0x00007faa3db9f000)
        libsqlite3.so.0 => /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 (0x00007faa3d8d2000)
        libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 (0x00007faa3d699000)

> file libvirt
libvirt: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=29385c54f2f33a78f3d1da66c5b8c42041c5bfb1, not stripped

building as static fails with following error:

> go build -a -ldflags "-extldflags '-static'" libvirt.go                                                                     
# command-line-arguments
/usr/local/go/pkg/tool/linux_amd64/link: running gcc failed: exit status 1
/usr/bin/ld: cannot find -lvirt-qemu
/usr/bin/ld: cannot find -lvirt
collect2: error: ld returned 1 exit status

It is even possible to do this, if yes how can i do this?

best regards

virsh net-dumpxml and func (n *Network) GetXMLDesc inconsistency

When using virsh net-dumpxml on defined network we can see this kind of xml:

<network connections='1'>
  <name>pf-enp6s0f0</name>
  <uuid>c8ac98ff-a7d2-4253-9b66-a23a9e468ed2</uuid>
  <forward mode='hostdev' managed='yes'>
    <driver name='vfio'/>
    <address type='pci' domain='0x0000' bus='0x06' slot='0x10' function='0x0'/>
  </forward>
</network>

when using GetXMLDesc

<network>
  <name>pf-enp6s0f0</name>
  <uuid>c8ac98ff-a7d2-4253-9b66-a23a9e468ed2</uuid>
  <forward mode='hostdev' managed='yes'>
    <driver name='vfio'/>
    <address type='pci' domain='0x0000' bus='0x06' slot='0x10' function='0x0'/>
  </forward>
</network>

difference in presence of optional parameter connections - " if present, specifies the number of guest interfaces currently connected via this network"

is this issue related to libvirt-go api binding or this is an upstream bug?

faced error: this function is not supported by the connection driver: virDomainGetHostname

Hi
I am trying to get VM hostname by dom.GetHostname(0) function.
But I faced the following error,
"MESSAGE":"Failed to invoke getHostname","error":"virError(Code=3, Domain=20, Message='this function is not supported by the connection driver: virDomainGetHostname')"

My code is running inside docker, and try to collect libvirt metrics of VMs on the node.

This is the node information,
[hv] root@pok1-qz1-sr1-rk026-s22:# dpkg -l | grep libvirt
ii libvirt-bin 4.1.0-2ibm3 amd64 programs for the libvirt library
ii libvirt-clients 4.1.0-2ibm3 amd64 Programs for the libvirt library
ii libvirt-daemon 4.1.0-2ibm3 amd64 Virtualization daemon
ii libvirt-daemon-system 4.1.0-2ibm3 amd64 Libvirt daemon configuration files
ii libvirt0:amd64 4.1.0-2ibm3 amd64 library for interfacing with different virtualization systems
[hv] root@pok1-qz1-sr1-rk026-s22:
# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.1 LTS
Release: 18.04
Codename: bionic

and this is the docker image information
root@libvirtmetrics-9mpqv:/# dpkg -l | grep libvirt
ii libvirt-bin 4.0.0-1ubuntu8.5 amd64 programs for the libvirt library
ii libvirt-clients 4.0.0-1ubuntu8.5 amd64 Programs for the libvirt library
ii libvirt-daemon 4.0.0-1ubuntu8.5 amd64 Virtualization daemon
ii libvirt-daemon-driver-storage-rbd 4.0.0-1ubuntu8.5 amd64 Virtualization daemon RBD storage driver
ii libvirt-daemon-system 4.0.0-1ubuntu8.5 amd64 Libvirt daemon configuration files
ii libvirt0:amd64 4.0.0-1ubuntu8.5 amd64 library for interfacing with different virtualization systems

I want to know which version of ubuntu and libvirt will support dom.GetHostname(0) function?
thanks.

latest commit breaks dependent projects

The most recent commit 145bf84 fails on several devices:

# github.com/libvirt/libvirt-go
../../../../libvirt/libvirt-go/domain.go:4228:3: could not determine kind of name for C.VIR_DOMAIN_IOTHREAD_POLL_GROW
../../../../libvirt/libvirt-go/domain.go:4224:3: could not determine kind of name for C.VIR_DOMAIN_IOTHREAD_POLL_MAX_NS
../../../../libvirt/libvirt-go/domain.go:4232:3: could not determine kind of name for C.VIR_DOMAIN_IOTHREAD_POLL_SHRINK
../../../../libvirt/libvirt-go/domain.go:772:44: could not determine kind of name for C.VIR_DOMAIN_STATS_IOTHREAD
exit status 2

Are there any new dependencies or similar I have to update to solve this issue? Thanks in advance

OpenConsole needs the devicename to be passed in

vurDomainOpenConsole say taht libvirt will select the first console for you if you don't specify the device name.

That is not the case in the go bindings, since an empyt string is passed in instead of nil.

I can create a PR tomorrow. Wantet do report it for now.

Btw. the bindings work great 👍

when using qemu+ssh connect,can't close the connection

I use qemu+ssh to connect to remote hypervisor. like this:

libvirt.NewConnect("qemu+ssh://[email protected]/system?socket=/var/run/libvirt/libvirt-sock")

When I am done, I exec conn.Close(), and it return 1, err == nil. But actually, I found ssh connection still on my system. like this:

ssh -l root--x.x.x.x sh-c 'if 'nc' -q 2>&1 | grep "requires an argument" >/dev/null 2>&1; then ARG=-q0;else ARG=;fi;'nc' $ARG -U /var/run/libvirt/libvirt-sock'

How can I close these connection?

Sync documentation to godoc?

The bindings are working great, thank you!

However, the documentation in godoc is difficult to use because the helpful descriptions aren't in there, but in here: https://libvirt.org/html/libvirt-libvirt-domain.html (for example). Is there a way to either sync those docs to the bindings, or to at least provide a link to the correct spots in the upstream C API docs?

Automation would be great, but if we should be sending patches, LMK.

Something just broke the builds

From: https://travis-ci.org/purpleidea/mgmt/jobs/393804740#L1326

../../libvirt/libvirt-go/connect.go:2790:3: could not determine kind of name for C.VIR_NODE_SEV_CBITPOS
../../libvirt/libvirt-go/connect.go:2786:3: could not determine kind of name for C.VIR_NODE_SEV_CERT_CHAIN
../../libvirt/libvirt-go/connect.go:2782:3: could not determine kind of name for C.VIR_NODE_SEV_PDH
../../libvirt/libvirt-go/connect.go:2794:3: could not determine kind of name for C.VIR_NODE_SEV_REDUCED_PHYS_BITS

Any pointers?

Thanks!

Disk Latency for Domain

I'm testing latency disk of domain but WrTotalTimes, RdTotalTimes, FlushTotalTimes not return in func (d *Domain) BlockStats(path string).

I don't know these variable match with what functions in cStats.
Please help me!!

Many thanks!

Problem with qemu-kvm domain and FSTrim - cannot set nil

Hello!

I have problem with

func (d *Domain) FSTrim(mount string, minimum uint64, flags uint32) error

https://github.com/libvirt/libvirt-go/blob/master/domain.go#L3795
It can get and send as mount only string, but I need to send nil ( NULL in original - in virsh it looks like

const char *mountPoint = NULL;

as example - https://libvirt.org/git/?p=libvirt.git;a=blob;f=tools/virsh-domain.c;h=40f16738661fd1faedb4f9eb8d45022ea75d7bc5;hb=HEAD#l13319)

Because it not work with any defined vaules in qemu -

    if (mountPoint) {
        virReportError(VIR_ERR_ARGUMENT_UNSUPPORTED, "%s", 
                       _("Specifying mount point "
                         "is not supported for now"));
        return -1;
    }

https://libvirt.org/git/?p=libvirt.git;a=blob;f=src/qemu/qemu_driver.c;h=e9f07c6e763fd4e8886986af4152bcccb48312f7;hb=HEAD#l18516

Now with libvirt-go I have only error

virError(Code=74, Domain=10, Message='argument unsupported: Specifying mount point is not supported for now')

( or cannot use nil as type string in argument to vm.FSTrim)
when I try use FSTrim function.

Do I something wrong or it need hack in FSTrim to send nil as mount point ?

Thanks in advance!

Bug in MigrateToURI3

Hi,
I'm setting following struct as param:

    migrParam := libvirt.DomainMigrateParameters{
        URISet: true,
        URI: dest_uri,
    }
err = domain_obj.MigrateToURI3(dest_uri, &migrParam, mFlags)

but when i look into libvirt debug, I see following params:

2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["compression"]=(string)<null>
2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["compression.mt.level"]=(int)0
2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["destination_name"]=(string)<null>
2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["graphics_uri"]=(string)<null>
2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["compression.mt.threads"]=(int)0
2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["compression.xbzrle.cache"]=(ullong)0
2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["bandwidth"]=(ullong)0
2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["listen_address"]=(string)<null>
2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["disks_port"]=(int)0
2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["compression.mt.dthreads"]=(int)0
2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["destination_xml"]=(string)<null>
2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["persistent_xml"]=(string)<null>
2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["auto_converge.increment"]=(int)0
2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["migrate_uri"]=(string)qemu+ssh://10.130.16.101/system
2017-03-07 16:54:09.356+0000: 27803: debug : virDomainMigrateUnmanagedParams:3432 : params["auto_converge.initial"]=(int)0

virDomainGetConnect

Is it possible to add this exported function, virDomainGetConnect?

So one could easily get *libvirt.Connect to hypervisor from libvirt.Domain

Panic with ^C

While playing with https://github.com/purpleidea/mgmt/ I got the below panic. I think it happened when I pressed ^C. Is there some special guard I should be doing to prevent this kind of panic?

This happened with 6716ded

Thanks!


fatal error: unexpected signal during runtime execution
[signal SIGSEGV: segmentation violation code=0x1 addr=0x28 pc=0x7f32cc17350f]

runtime stack:
runtime.throw(0x1999beb, 0x2a)
	/usr/lib/golang/src/runtime/panic.go:608 +0x72
runtime.sigpanic()
	/usr/lib/golang/src/runtime/signal_unix.go:374 +0x2f2

goroutine 561 [syscall]:
runtime.cgocall(0x147ac70, 0xc0009c3e58, 0xc00081c820)
	/usr/lib/golang/src/runtime/cgocall.go:128 +0x5e fp=0xc0009c3e28 sp=0xc0009c3df0 pc=0x42115e
github.com/libvirt/libvirt-go._Cfunc_virEventRunDefaultImplWrapper(0xc00081c820, 0xc000000000)
	_cgo_gotypes.go:6036 +0x49 fp=0xc0009c3e58 sp=0xc0009c3e28 pc=0x10495f9
github.com/libvirt/libvirt-go.EventRunDefaultImpl.func1(0xc00081c820, 0xc00081c820)
	/home/james/code/gopath/src/github.com/libvirt/libvirt-go/events.go:57 +0x9d fp=0xc0009c3e90 sp=0xc0009c3e58 pc=0x10b911d
github.com/libvirt/libvirt-go.EventRunDefaultImpl(0x0, 0xc0002925a0)
	/home/james/code/gopath/src/github.com/libvirt/libvirt-go/events.go:57 +0x44 fp=0xc0009c3f00 sp=0xc0009c3e90 pc=0x108eb84
github.com/purpleidea/mgmt/engine/resources.(*VirtRes).Watch.func1(0xc00093a9c0, 0xc000844780, 0xc0002925a0, 0xc000292540)
	/home/james/code/gopath/src/github.com/purpleidea/mgmt/engine/resources/virt.go:326 +0x10c fp=0xc0009c3fc0 sp=0xc0009c3f00 pc=0x114979c
runtime.goexit()
	/usr/lib/golang/src/runtime/asm_amd64.s:1333 +0x1 fp=0xc0009c3fc8 sp=0xc0009c3fc0 pc=0x47a931
created by github.com/purpleidea/mgmt/engine/resources.(*VirtRes).Watch
	/home/james/code/gopath/src/github.com/purpleidea/mgmt/engine/resources/virt.go:314 +0x1ac

as a bad magic number

warning : virObjectGetLockableObj:399 : Object 0x7f75a0005650 has a bad magic number A0004570

undefined: libvirt.QemuAgentCommand

ENV

go version

go version go1.13 linux/amd64

go env

GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/xgf/.cache/go-build"
GOENV="/home/xgf/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/mnt/d/gopath"
GOPRIVATE=""
GOPROXY="https://goproxy.cn,https://goproxy.io,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/mnt/d/gopath/src/AC/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build220911615=/tmp/go-build -gno-record-gcc-switches"

go.mod

require github.com/libvirt/libvirt-go v5.7.0+incompatible

OS and libvirt

OS: Ubuntu 18.04
libvirt-dev: 4.0.0-1ubuntu8.13

OS: CentOS 7.5.1804
libvirt-devel: 3.2.0

I compiled my program on Ubuntu 18.04 and CentOS 7.5, and both failed like this:

watch/vm_prometheus.go:107:15: undefined: libvirt.QemuAgentCommand

I saw that CGO_ENABLED has been set to "1", that's, CGO_ENABLED="1".

If I don't use libvirt.QemuAgentCommand and only use libvirt.NewConnect(), conn.ListAllDomains(), dom.GetUUIDString(), etc, it's ok.

Any help will be appreciated.

Occasional SIGSEGV when using NixOS

Background

I've checked out terraform-provider-libvirt@d37e94177, which uses libvirt-go@4dcd0a836. After installing the plugin, I exported TF_LOG=DEBUG and TF_SKIP_QEMU_AGENT= which causes terraform-provider-libvirt to skip straight to using the libvirt APIs.

System

OS: NixOS 17.09.3129.1dcd022f01b (Hummingbird)
Go: go1.9.2 linux/amd64
GCC: 6.4.0

Failure

Often, but not always, terraform-provider-libvirt crashes with the stack trace below. I tried building terraform-provider-libvirt in a fedora container on my system and saw no failures, but I don't know how to dig further.

2018-03-08T15:54:34.971-0800 [DEBUG] plugin.terraform-provider-libvirt: 2018/03/08 15:54:34 [INFO] Finally adding IP/MAC/host=10.17.3.37/A6:FE:DE:34:AC:3D/crawford-test
2018-03-08T15:54:34.971-0800 [DEBUG] plugin.terraform-provider-libvirt: 2018/03/08 15:54:34 Updating host with XML:
2018-03-08T15:54:34.971-0800 [DEBUG] plugin.terraform-provider-libvirt:   <host mac="A6:FE:DE:34:AC:3D" name="crawford-test" ip="10.17.3.37"></host>
2018-03-08T15:54:34.971-0800 [DEBUG] plugin.terraform-provider-libvirt: fatal error: unexpected signal during runtime execution
2018-03-08T15:54:34.972-0800 [DEBUG] plugin.terraform-provider-libvirt: [signal SIGSEGV: segmentation violation code=0x1 addr=0xb9 pc=0x7f6aae7f19f8]
2018-03-08T15:54:34.972-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.972-0800 [DEBUG] plugin.terraform-provider-libvirt: runtime stack:
2018-03-08T15:54:34.972-0800 [DEBUG] plugin.terraform-provider-libvirt: runtime.throw(0xf41bba, 0x2a)
2018-03-08T15:54:34.972-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/runtime/panic.go:605 +0x95
2018-03-08T15:54:34.972-0800 [DEBUG] plugin.terraform-provider-libvirt: runtime.sigpanic()
2018-03-08T15:54:34.972-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/runtime/signal_unix.go:351 +0x2b8
2018-03-08T15:54:34.972-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.972-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 88 [syscall, locked to thread]:
2018-03-08T15:54:34.972-0800 [DEBUG] plugin.terraform-provider-libvirt: runtime.cgocall(0xced5a0, 0xc4201e50c8, 0x100)
2018-03-08T15:54:34.972-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/runtime/cgocall.go:132 +0xe4 fp=0xc4201e5080 sp=0xc4201e5040 pc=0x4160b4
2018-03-08T15:54:34.972-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/libvirt/libvirt-go._Cfunc_virNetworkUpdate(0x7f6a84000a30, 0x400000001, 0xffffffff, 0x7f6a84000960, 0x0, 0x7f6a00000000)
2018-03-08T15:54:34.972-0800 [DEBUG] plugin.terraform-provider-libvirt:         github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/libvirt/libvirt-go/_obj/_cgo_gotypes.go:6329 +0x4d fp=0xc4201e50c8 sp=0xc4201e5080 pc=0x54b66d
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/libvirt/libvirt-go.(*Network).Update.func2(0x7f6a84000a30, 0x400000001, 0x7f6affffffff, 0x7f6a84000960, 0x0, 0xc4200980f0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/libvirt/libvirt-go/network.go:281 +0x8e fp=0xc4201e5108 sp=0xc4201e50c8 pc=0x5aa6be
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/libvirt/libvirt-go.(*Network).Update(0xc42036a128, 0x1, 0x4, 0xffffffffffffffff, 0xc4203c1220, 0x4c, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/libvirt/libvirt-go/network.go:281 +0xc9 fp=0xc4201e5178 sp=0xc4201e5108 pc=0x58bd09
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/libvirt.updateHost(0xc42036a128, 0xc4201f46b0, 0xa, 0xc420394d40, 0x11, 0xc42001bb40, 0xd, 0xc42021e000, 0x5500)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/libvirt/utils_libvirt.go:39 +0x152 fp=0xc4201e5200 sp=0xc4201e5178 pc=0xbf6612
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/libvirt.updateOrAddHost(0xc42036a128, 0xc4201f46b0, 0xa, 0xc420394d40, 0x11, 0xc42001bb40, 0xd, 0x0, 0x0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/libvirt/utils_libvirt.go:44 +0x8e fp=0xc4201e52d0 sp=0xc4201e5200 pc=0xbf66de
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/libvirt.resourceLibvirtDomainCreate(0xc4200b1960, 0xd60cc0, 0xc42031d158, 0x0, 0x0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/libvirt/resource_libvirt_domain.go:512 +0x15c0 fp=0xc4201e59d0 sp=0xc4201e52d0 pc=0xbdedd0
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/helper/schema.(*Resource).Apply(0xc4200b0690, 0xc420098870, 0xc42048ac20, 0xd60cc0, 0xc42031d158, 0x1, 0xc4204481b0, 0xc420327590)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/helper/schema/resource.go:227 +0x364 fp=0xc4201e5a78 sp=0xc4201e59d0 pc=0xbb2dd4
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/helper/schema.(*Provider).Apply(0xc4200b0930, 0xc420098820, 0xc420098870, 0xc42048ac20, 0x7f6aaf22c6c8, 0x0, 0x18)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/helper/schema/provider.go:283 +0xa4 fp=0xc4201e5ad8 sp=0xc4201e5a78 pc=0xbb1444
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/plugin.(*ResourceProviderServer).Apply(0xc4201254e0, 0xc42048a800, 0xc420476c30, 0x0, 0x0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/plugin/resource_provider.go:527 +0x57 fp=0xc4201e5b38 sp=0xc4201e5ad8 pc=0xce44c7
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: runtime.call64(0xc4204481b0, 0xc42036a170, 0xc420448210, 0x1800000028)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/runtime/asm_amd64.s:510 +0x3b fp=0xc4201e5b88 sp=0xc4201e5b38 pc=0x46acab
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: reflect.Value.call(0xc420075380, 0xc42036a170, 0x13, 0xf1bde7, 0x4, 0xc420058f20, 0x3, 0x3, 0xc4203656e8, 0xc4203ac028, ...)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/reflect/value.go:434 +0x905 fp=0xc4201e5e60 sp=0xc4201e5b88 pc=0x4d51f5
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: reflect.Value.Call(0xc420075380, 0xc42036a170, 0x13, 0xc420365720, 0x3, 0x3, 0xc400000005, 0x0, 0x0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/reflect/value.go:302 +0xa4 fp=0xc4201e5ec8 sp=0xc4201e5e60 pc=0x4d47d4
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*service).call(0xc420183700, 0xc4200982d0, 0xc42001a430, 0xc420376200, 0xc4203575e0, 0xd622c0, 0xc42048a800, 0x16, 0xd62300, 0xc420476c30, ...)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:381 +0x142 fp=0xc4201e5f78 sp=0xc4201e5ec8 pc=0xcccaf2
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: runtime.goexit()
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/runtime/asm_amd64.s:2337 +0x1 fp=0xc4201e5f80 sp=0xc4201e5f78 pc=0x46d471
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: created by net/rpc.(*Server).ServeCodec
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:475 +0x36b
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 1 [chan receive]:
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.Serve(0xc4201f9ef0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/server.go:239 +0xce0
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/plugin.Serve(0xc4201f9f60)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/plugin/serve.go:41 +0x1dc
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: main.main()
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/main.go:29 +0x5c
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 5 [syscall]:
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: os/signal.signal_recv(0x0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/runtime/sigqueue.go:131 +0xa6
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: os/signal.loop()
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/os/signal/signal_unix.go:22 +0x22
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: created by os/signal.init.0
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/os/signal/signal_unix.go:28 +0x41
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 7 [select, locked to thread]:
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: runtime.gopark(0xf5b208, 0x0, 0xf1e2e5, 0x6, 0x18, 0x1)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/runtime/proc.go:287 +0x12c
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: runtime.selectgo(0xc420340f50, 0xc420038840)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/runtime/select.go:395 +0x1149
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: runtime.ensureSigM.func1()
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/runtime/signal_unix.go:511 +0x220
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: runtime.goexit()
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/runtime/asm_amd64.s:2337 +0x1
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 18 [chan receive]:
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.Serve.func2(0xc420075020, 0x179d6e0, 0xc420099720)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/server.go:227 +0x94
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: created by github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.Serve
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/server.go:224 +0xc54
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 19 [IO wait]:
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.runtime_pollWait(0x7f6aaf1d0c70, 0x72, 0xffffffffffffffff)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/runtime/netpoll.go:173 +0x57
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.(*pollDesc).wait(0xc4200be618, 0x72, 0xc420052d00, 0x0, 0x0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/internal/poll/fd_poll_runtime.go:85 +0xae
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.(*pollDesc).waitRead(0xc4200be618, 0xffffffffffffff00, 0x0, 0x0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/internal/poll/fd_poll_runtime.go:90 +0x3d
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.(*FD).Accept(0xc4200be600, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/internal/poll/fd_unix.go:335 +0x1e2
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: net.(*netFD).accept(0xc4200be600, 0x1819ba0, 0x7f6aaf18c000, 0x23801000000)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/fd_unix.go:238 +0x42
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: net.(*UnixListener).accept(0xc420299740, 0xc42031c000, 0x0, 0x0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/unixsock_posix.go:162 +0x32
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: net.(*UnixListener).Accept(0xc420299740, 0xc420052f88, 0xc420052f90, 0xc420052f80, 0xcdbb95)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/unixsock.go:241 +0x49
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*rmListener).Accept(0xc4202f4120, 0xf598f0, 0xc420182e40, 0x7f6aaf18c000, 0xc42031c000)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         <autogenerated>:1 +0x3c
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*RPCServer).Serve(0xc420182e40, 0x17972e0, 0xc4202f4120)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:46 +0x69
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: created by github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.Serve
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/server.go:238 +0xcc6
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 20 [select]:
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux.(*Stream).Read(0xc420352000, 0xc42038d000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux/stream.go:130 +0x2b4
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: bufio.(*Reader).Read(0xc42034c4e0, 0xc420346094, 0x1, 0x9, 0xc420069908, 0x41cb19, 0xc420069990)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/bufio/bufio.go:213 +0x30b
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: io.ReadAtLeast(0x178cde0, 0xc42034c4e0, 0xc420346094, 0x1, 0x9, 0x1, 0xc420069990, 0xc420069998, 0x100000066f801)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:309 +0x86
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: io.ReadFull(0x178cde0, 0xc42034c4e0, 0xc420346094, 0x1, 0x9, 0x671233, 0xd99020, 0x3)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:327 +0x58
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.decodeUintReader(0x178cde0, 0xc42034c4e0, 0xc420346094, 0x9, 0x9, 0xc420069a30, 0x43d5c9, 0xc400000008, 0xc420344080)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decode.go:120 +0x63
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).recvMessage(0xc420376180, 0xc420069a48)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:80 +0x57
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).decodeTypeSequence(0xc420376180, 0xf5b200, 0xc420376180)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:144 +0x14c
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).DecodeValue(0xc420376180, 0xd780c0, 0xc420356500, 0x16, 0x0, 0x0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:212 +0xe6
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).Decode(0xc420376180, 0xd780c0, 0xc420356500, 0xc420356518, 0xc420368028)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:189 +0x16d
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*gobServerCodec).ReadRequestHeader(0xc420358300, 0xc420356500, 0x8f6e0, 0xd7efc0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:401 +0x45
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).readRequestHeader(0xc420368000, 0x1799060, 0xc420358300, 0xc42001a388, 0x16, 0x198, 0x1, 0x0, 0x0)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:581 +0x67
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).readRequest(0xc420368000, 0x1799060, 0xc420358300, 0xc420368000, 0xc4203460a0, 0xc420376100, 0xc420356160, 0xd99020, 0xc4202284e0, 0x198, ...)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:541 +0x5a
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).ServeCodec(0xc420368000, 0x1799060, 0xc420358300)
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:460 +0x77
2018-03-08T15:54:34.973-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).ServeConn(0xc420368000, 0x7f6aaf14c050, 0xc420352000)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:452 +0x34b
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*RPCServer).ServeConn(0xc420182e40, 0x7f6aaf18c000, 0xc42031c000)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:108 +0x5e8
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: created by github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*RPCServer).Serve
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:52 +0x55
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 21 [IO wait]:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.runtime_pollWait(0x7f6aaf1d0bb0, 0x72, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/runtime/netpoll.go:173 +0x57
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.(*pollDesc).wait(0xc42030c118, 0x72, 0xffffffffffffff00, 0x1792160, 0x178b370)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/internal/poll/fd_poll_runtime.go:85 +0xae
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.(*pollDesc).waitRead(0xc42030c118, 0xc420324000, 0x1000, 0x1000)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/internal/poll/fd_poll_runtime.go:90 +0x3d
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.(*FD).Read(0xc42030c100, 0xc420324000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/internal/poll/fd_unix.go:126 +0x18a
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: net.(*netFD).Read(0xc42030c100, 0xc420324000, 0x1000, 0x1000, 0xc42048a7e0, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/fd_unix.go:202 +0x52
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: net.(*conn).Read(0xc42031c000, 0xc420324000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/net.go:176 +0x6d
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: bufio.(*Reader).Read(0xc420322000, 0xc420346000, 0xc, 0xc, 0xc420476940, 0x7f6aaf1d3d50, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/bufio/bufio.go:213 +0x30b
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: io.ReadAtLeast(0x178cde0, 0xc420322000, 0xc420346000, 0xc, 0xc, 0xc, 0xc, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:309 +0x86
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: io.ReadFull(0x178cde0, 0xc420322000, 0xc420346000, 0xc, 0xc, 0xc, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:327 +0x58
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux.(*Session).recvLoop(0xc420332000, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux/session.go:418 +0xfc
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux.(*Session).recv(0xc420332000)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux/session.go:406 +0x2b
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: created by github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux.newSession
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux/session.go:108 +0x3e4
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 22 [select]:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux.(*Session).send(0xc420332000)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux/session.go:368 +0x2ca
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: created by github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux.newSession
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux/session.go:109 +0x406
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 23 [select]:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux.(*Session).keepalive(0xc420332000)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux/session.go:302 +0x102
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: created by github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux.newSession
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux/session.go:111 +0x455
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 34 [IO wait]:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.runtime_pollWait(0x7f6aaf1d0f70, 0x72, 0x1)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/runtime/netpoll.go:173 +0x57
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.(*pollDesc).wait(0xc420099788, 0x72, 0xffffffffffffff01, 0x1792160, 0x178b370)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/internal/poll/fd_poll_runtime.go:85 +0xae
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.(*pollDesc).waitRead(0xc420099788, 0xc420378001, 0x8000, 0x8000)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/internal/poll/fd_poll_runtime.go:90 +0x3d
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.(*FD).Read(0xc420099770, 0xc420378000, 0x8000, 0x8000, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/internal/poll/fd_unix.go:126 +0x18a
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: os.(*File).read(0xc42000e938, 0xc420378000, 0x8000, 0x8000, 0x0, 0xc, 0x7f6aaf18c088)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/os/file_unix.go:216 +0x4e
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: os.(*File).Read(0xc42000e938, 0xc420378000, 0x8000, 0x8000, 0x8000, 0x8000, 0xc42034a000)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/os/file.go:103 +0x6d
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: io.copyBuffer(0x178e460, 0xc4203520d0, 0x178f9e0, 0xc42000e938, 0xc420378000, 0x8000, 0x8000, 0x1, 0xc42034a000, 0xc420040fa0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:392 +0x123
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: io.Copy(0x178e460, 0xc4203520d0, 0x178f9e0, 0xc42000e938, 0xc, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:362 +0x68
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.copyStream(0xf1e3bd, 0x6, 0x178e460, 0xc4203520d0, 0x178f9e0, 0xc42000e938)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/stream.go:15 +0x79
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: created by github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*RPCServer).ServeConn
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:91 +0x367
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 35 [IO wait]:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.runtime_pollWait(0x7f6aaf1d0df0, 0x72, 0x1)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/runtime/netpoll.go:173 +0x57
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.(*pollDesc).wait(0xc420099828, 0x72, 0xffffffffffffff01, 0x1792160, 0x178b370)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/internal/poll/fd_poll_runtime.go:85 +0xae
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.(*pollDesc).waitRead(0xc420099828, 0xc420380001, 0x8000, 0x8000)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/internal/poll/fd_poll_runtime.go:90 +0x3d
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: internal/poll.(*FD).Read(0xc420099810, 0xc420380000, 0x8000, 0x8000, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/internal/poll/fd_unix.go:126 +0x18a
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: os.(*File).read(0xc42000e948, 0xc420380000, 0x8000, 0x8000, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/os/file_unix.go:216 +0x4e
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: os.(*File).Read(0xc42000e948, 0xc420380000, 0x8000, 0x8000, 0x8000, 0x8000, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/os/file.go:103 +0x6d
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: io.copyBuffer(0x178e460, 0xc4203521a0, 0x178f9e0, 0xc42000e948, 0xc420380000, 0x8000, 0x8000, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:392 +0x123
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: io.Copy(0x178e460, 0xc4203521a0, 0x178f9e0, 0xc42000e948, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:362 +0x68
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.copyStream(0xf1e3b7, 0x6, 0x178e460, 0xc4203521a0, 0x178f9e0, 0xc42000e948)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/stream.go:15 +0x79
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: created by github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*RPCServer).ServeConn
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:92 +0x3ec
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 36 [select]:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux.(*Session).AcceptStream(0xc420332000, 0xf598e8, 0xc420356080, 0x5)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux/session.go:201 +0xf2
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*MuxBroker).Run(0xc420356080)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/mux_broker.go:139 +0x33
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: created by github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*RPCServer).ServeConn
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:96 +0x499
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 38 [select]:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux.(*Stream).Read(0xc4202fc0d0, 0xc4203b3000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux/stream.go:130 +0x2b4
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: bufio.(*Reader).Read(0xc420075920, 0xc420283560, 0x1, 0x9, 0xc4203bf948, 0x68c8a7, 0xc4200bef80)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/bufio/bufio.go:213 +0x30b
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: io.ReadAtLeast(0x178cde0, 0xc420075920, 0xc420283560, 0x1, 0x9, 0x1, 0x671a34, 0xc4200bef80, 0xc420356a60)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:309 +0x86
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: io.ReadFull(0x178cde0, 0xc420075920, 0xc420283560, 0x1, 0x9, 0xc42003d900, 0xc420359050, 0x3)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:327 +0x58
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.decodeUintReader(0x178cde0, 0xc420075920, 0xc420283560, 0x9, 0x9, 0xc4203bfa50, 0x43d5c9, 0xc400000008, 0xc420182c00)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decode.go:120 +0x63
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).recvMessage(0xc4200bef80, 0xc4203bfa68)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:80 +0x57
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).decodeTypeSequence(0xc4200bef80, 0xf5b200, 0xc4200bef80)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:144 +0x14c
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).DecodeValue(0xc4200bef80, 0xd780c0, 0xc420356d00, 0x16, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:212 +0xe6
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).Decode(0xc4200bef80, 0xd780c0, 0xc420356d00, 0xe407e0, 0xc420099928)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:189 +0x16d
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*gobServerCodec).ReadRequestHeader(0xc420299e60, 0xc420356d00, 0x72c60, 0xd62540)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:401 +0x45
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).readRequestHeader(0xc420099900, 0x1799060, 0xc420299e60, 0xc42034a8b0, 0x16, 0xc4202f45e0, 0x1, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:581 +0x67
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).readRequest(0xc420099900, 0x1799060, 0xc420299e60, 0xc420099900, 0xc420283570, 0xc4200beb00, 0xc4202f45e0, 0xd62500, 0xc42034a720, 0x16, ...)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:541 +0x5a
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).ServeCodec(0xc420099900, 0x1799060, 0xc420299e60)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:460 +0x77
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).ServeConn(0xc420099900, 0x7f6aaf14c050, 0xc4202fc0d0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:452 +0x34b
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.serve(0x7f6aaf14c050, 0xc4202fc0d0, 0xf1d721, 0x6, 0xedbc40, 0xc420356560)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:196 +0x104
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*dispenseServer).Dispense.func1(0xc42034a170, 0xc400000001, 0xc420346180, 0x8, 0xedbc40, 0xc420356560)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:183 +0x199
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: created by github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*dispenseServer).Dispense
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:176 +0x1a6
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 84 [select]:
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux.(*Stream).Read(0xc4202fd040, 0xc420188000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux/stream.go:130 +0x2b4
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt: bufio.(*Reader).Read(0xc420075bc0, 0xc42001a420, 0x1, 0x9, 0xc4204c3948, 0x68c8a7, 0xc420376980)
2018-03-08T15:54:34.974-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/bufio/bufio.go:213 +0x30b
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: io.ReadAtLeast(0x178cde0, 0xc420075bc0, 0xc42001a420, 0x1, 0x9, 0x1, 0x671a34, 0xc420376980, 0xc420357040)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:309 +0x86
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: io.ReadFull(0x178cde0, 0xc420075bc0, 0xc42001a420, 0x1, 0x9, 0xc42003b300, 0xc42048ac20, 0x3)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:327 +0x58
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.decodeUintReader(0x178cde0, 0xc420075bc0, 0xc42001a420, 0x9, 0x9, 0xc4204c3a50, 0x43d5c9, 0xc400000008, 0xc42038a040)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decode.go:120 +0x63
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).recvMessage(0xc420376980, 0xc4204c3a68)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:80 +0x57
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).decodeTypeSequence(0xc420376980, 0xf5b200, 0xc420376980)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:144 +0x14c
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).DecodeValue(0xc420376980, 0xd780c0, 0xc420125620, 0x16, 0x0, 0x0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:212 +0xe6
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).Decode(0xc420376980, 0xd780c0, 0xc420125620, 0xc420125638, 0xc4200982f8)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:189 +0x16d
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*gobServerCodec).ReadRequestHeader(0xc4204627b0, 0xc420125620, 0x72a20, 0xd62300)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:401 +0x45
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).readRequestHeader(0xc4200982d0, 0x1799060, 0xc4204627b0, 0xc420476c30, 0x16, 0xc4203575e0, 0x1, 0x0, 0x0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:581 +0x67
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).readRequest(0xc4200982d0, 0x1799060, 0xc4204627b0, 0xc4200982d0, 0xc42001a430, 0xc420376200, 0xc4203575e0, 0xd622c0, 0xc42048a800, 0x16, ...)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:541 +0x5a
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).ServeCodec(0xc4200982d0, 0x1799060, 0xc4204627b0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:460 +0x77
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).ServeConn(0xc4200982d0, 0x7f6aaf14c050, 0xc4202fd040)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:452 +0x34b
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.serve(0x7f6aaf14c050, 0xc4202fd040, 0xf1d721, 0x6, 0xedbc40, 0xc4201254e0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:196 +0x104
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*dispenseServer).Dispense.func1(0xc42034a170, 0xc400000005, 0xc42001a380, 0x8, 0xedbc40, 0xc4201254e0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:183 +0x199
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: created by github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*dispenseServer).Dispense
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:176 +0x1a6
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 42 [select]:
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux.(*Stream).Read(0xc4203ceea0, 0xc4203db000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux/stream.go:130 +0x2b4
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: bufio.(*Reader).Read(0xc4203dc000, 0xc420283590, 0x1, 0x9, 0xc42015d948, 0xc420076380, 0x7f6aaf22c000)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/bufio/bufio.go:213 +0x30b
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: io.ReadAtLeast(0x178cde0, 0xc4203dc000, 0xc420283590, 0x1, 0x9, 0x1, 0xc42015da10, 0x671233, 0xd99020)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:309 +0x86
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: io.ReadFull(0x178cde0, 0xc4203dc000, 0xc420283590, 0x1, 0x9, 0xc42003a000, 0xe40ce0, 0x3)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:327 +0x58
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.decodeUintReader(0x178cde0, 0xc4203dc000, 0xc420283590, 0x9, 0x9, 0xc42015da50, 0x43d5c9, 0xc400000008, 0xc420182f00)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decode.go:120 +0x63
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).recvMessage(0xc4200bf780, 0xc42015da68)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:80 +0x57
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).decodeTypeSequence(0xc4200bf780, 0xf5b200, 0xc4200bf780)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:144 +0x14c
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).DecodeValue(0xc4200bf780, 0xd780c0, 0xc4202f4b60, 0x16, 0x0, 0x0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:212 +0xe6
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).Decode(0xc4200bf780, 0xd780c0, 0xc4202f4b60, 0xc4202f4b78, 0xc420099978)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:189 +0x16d
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*gobServerCodec).ReadRequestHeader(0xc4203d8300, 0xc4202f4b60, 0x72ee0, 0xd627c0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:401 +0x45
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).readRequestHeader(0xc420099950, 0x1799060, 0xc4203d8300, 0xc420401890, 0x16, 0xc4202f4620, 0xecf801, 0x0, 0x0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:581 +0x67
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).readRequest(0xc420099950, 0x1799060, 0xc4203d8300, 0xc420099950, 0xc420283588, 0xc4200bf700, 0xc4202f4620, 0xd62780, 0xc42041a2e0, 0x16, ...)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:541 +0x5a
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).ServeCodec(0xc420099950, 0x1799060, 0xc4203d8300)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:460 +0x77
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).ServeConn(0xc420099950, 0x7f6aaf14c050, 0xc4203ceea0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:452 +0x34b
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.serve(0x7f6aaf14c050, 0xc4203ceea0, 0xf1d721, 0x6, 0xedbc40, 0xc4203570a0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:196 +0x104
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*dispenseServer).Dispense.func1(0xc42034a170, 0xc400000002, 0xc4203465e0, 0x8, 0xedbc40, 0xc4203570a0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:183 +0x199
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: created by github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*dispenseServer).Dispense
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:176 +0x1a6
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 28 [select]:
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux.(*Stream).Read(0xc4202fcc30, 0xc42044e000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux/stream.go:130 +0x2b4
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: bufio.(*Reader).Read(0xc420446660, 0xc4204165e0, 0x1, 0x9, 0xc4203bb948, 0x68c8a7, 0xc42044c080)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/bufio/bufio.go:213 +0x30b
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: io.ReadAtLeast(0x178cde0, 0xc420446660, 0xc4204165e0, 0x1, 0x9, 0x1, 0x671a34, 0xc42044c080, 0xc42041acc0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:309 +0x86
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: io.ReadFull(0x178cde0, 0xc420446660, 0xc4204165e0, 0x1, 0x9, 0xc42003a000, 0xc4203f3770, 0x3)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:327 +0x58
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.decodeUintReader(0x178cde0, 0xc420446660, 0xc4204165e0, 0x9, 0x9, 0xc4203bba50, 0x43d5c9, 0xc400000008, 0xc420183140)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decode.go:120 +0x63
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).recvMessage(0xc42044c080, 0xc4203bba68)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:80 +0x57
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).decodeTypeSequence(0xc42044c080, 0xf5b200, 0xc42044c080)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:144 +0x14c
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).DecodeValue(0xc42044c080, 0xd780c0, 0xc420357520, 0x16, 0x0, 0x0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:212 +0xe6
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).Decode(0xc42044c080, 0xd780c0, 0xc420357520, 0xc420357538, 0xc4203f3388)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:189 +0x16d
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*gobServerCodec).ReadRequestHeader(0xc420448420, 0xc420357520, 0x72de0, 0xd626c0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:401 +0x45
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).readRequestHeader(0xc4203f3360, 0x1799060, 0xc420448420, 0xc4204553c0, 0x16, 0xc42041aec0, 0x1, 0x0, 0x0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:581 +0x67
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).readRequest(0xc4203f3360, 0x1799060, 0xc420448420, 0xc4203f3360, 0xc4204165f0, 0xc4200bfd80, 0xc42041aec0, 0xd62680, 0xc420455280, 0x16, ...)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:541 +0x5a
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).ServeCodec(0xc4203f3360, 0x1799060, 0xc420448420)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:460 +0x77
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).ServeConn(0xc4203f3360, 0x7f6aaf14c050, 0xc4202fcc30)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:452 +0x34b
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.serve(0x7f6aaf14c050, 0xc4202fcc30, 0xf1d721, 0x6, 0xedbc40, 0xc42031a340)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:196 +0x104
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*dispenseServer).Dispense.func1(0xc42034a170, 0xc400000003, 0xc4203160f0, 0x8, 0xedbc40, 0xc42031a340)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:183 +0x199
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: created by github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*dispenseServer).Dispense
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:176 +0x1a6
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: goroutine 50 [select]:
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux.(*Stream).Read(0xc420432b60, 0xc42048e000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/yamux/stream.go:130 +0x2b4
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: bufio.(*Reader).Read(0xc420322ea0, 0xc420316150, 0x1, 0x9, 0xc42042f948, 0x68c8a7, 0xc42030ca00)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/bufio/bufio.go:213 +0x30b
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: io.ReadAtLeast(0x178cde0, 0xc420322ea0, 0xc420316150, 0x1, 0x9, 0x1, 0x671a34, 0xc42030ca00, 0xc42031a700)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:309 +0x86
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: io.ReadFull(0x178cde0, 0xc420322ea0, 0xc420316150, 0x1, 0x9, 0xc42003a000, 0xc420298180, 0x3)
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/io/io.go:327 +0x58
2018-03-08T15:54:34.975-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.decodeUintReader(0x178cde0, 0xc420322ea0, 0xc420316150, 0x9, 0x9, 0xc42042fa50, 0x43d5c9, 0xc400000008, 0xc42031e0c0)
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decode.go:120 +0x63
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).recvMessage(0xc42030ca00, 0xc42042fa68)
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:80 +0x57
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).decodeTypeSequence(0xc42030ca00, 0xf5b200, 0xc42030ca00)
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:144 +0x14c
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).DecodeValue(0xc42030ca00, 0xd780c0, 0xc42031a900, 0x16, 0x0, 0x0)
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:212 +0xe6
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt: encoding/gob.(*Decoder).Decode(0xc42030ca00, 0xd780c0, 0xc42031a900, 0xc42031a918, 0xc420320118)
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/encoding/gob/decoder.go:189 +0x16d
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*gobServerCodec).ReadRequestHeader(0xc420326c90, 0xc42031a900, 0x72ae0, 0xd623c0)
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:401 +0x45
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).readRequestHeader(0xc4203200f0, 0x1799060, 0xc420326c90, 0xc4203e0630, 0x16, 0xc42031b6e0, 0x1, 0x0, 0x0)
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:581 +0x67
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).readRequest(0xc4203200f0, 0x1799060, 0xc420326c90, 0xc4203200f0, 0xc420316160, 0xc42030c400, 0xc42031b6e0, 0xd62380, 0xc4202f4000, 0x16, ...)
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:541 +0x5a
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).ServeCodec(0xc4203200f0, 0x1799060, 0xc420326c90)
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:460 +0x77
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt: net/rpc.(*Server).ServeConn(0xc4203200f0, 0x7f6aaf14c050, 0xc420432b60)
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt:         /nix/store/haa62nc1zz7327d2l6iyghi8lsbwjr08-go-1.9.2/share/go/src/net/rpc/server.go:452 +0x34b
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.serve(0x7f6aaf14c050, 0xc420432b60, 0xf1d721, 0x6, 0xedbc40, 0xc42041bfe0)
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:196 +0x104
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt: github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*dispenseServer).Dispense.func1(0xc42034a170, 0xc400000004, 0xc420417008, 0x8, 0xedbc40, 0xc42041bfe0)
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:183 +0x199
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt: created by github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin.(*dispenseServer).Dispense
2018-03-08T15:54:34.976-0800 [DEBUG] plugin.terraform-provider-libvirt:         /home/alex/code/go/src/github.com/dmacvicar/terraform-provider-libvirt/vendor/github.com/hashicorp/terraform/vendor/github.com/hashicorp/go-plugin/rpc_server.go:176 +0x1a6

Panic!

I have no idea how I'm causing this panic. If anyone can LMK if it's a libvirt bug or what it would help!

https://paste.fedoraproject.org/544989/

fatal error: unexpected signal during runtime execution
[signal 0xb code=0x80 addr=0x0 pc=0x7efe9f14bf98]

runtime stack:
runtime.throw(0x1679bc0, 0x2a)
	/usr/lib/golang/src/runtime/panic.go:547 +0x90
runtime.sigpanic()
	/usr/lib/golang/src/runtime/sigpanic_unix.go:12 +0x5a

goroutine 310 [syscall, locked to thread]:
runtime.cgocall(0xf5bd70, 0xc42059f640, 0x10000c400000000)
	/usr/lib/golang/src/runtime/cgocall.go:123 +0x11b fp=0xc42059f608 sp=0xc42059f5d8
github.com/libvirt/libvirt-go._Cfunc_virDomainDefineXML(0x3c96770, 0x3c97430, 0x0)
	??:0 +0x42 fp=0xc42059f640 sp=0xc42059f608
github.com/libvirt/libvirt-go.(*Connect).DomainDefineXML(0xc42017a3e8, 0xc420452a80, 0x321, 0x0, 0x0, 0x0)
	/home/james/code/gopath/src/github.com/libvirt/libvirt-go/connect.go:776 +0x132 fp=0xc42059f6d0 sp=0xc42059f640
github.com/purpleidea/mgmt/resources.(*VirtRes).domainCreate(0xc42012e900, 0x7efe9f8c3bc8, 0xc4206503f0, 0x0, 0x0)
	/home/james/code/gopath/src/github.com/purpleidea/mgmt/resources/virt.go:454 +0x5b8 fp=0xc42059f8f0 sp=0xc42059f6d0
github.com/purpleidea/mgmt/resources.(*VirtRes).CheckApply(0xc42012e900, 0x1, 0xc42012e900, 0x0, 0x0)
	/home/james/code/gopath/src/github.com/purpleidea/mgmt/resources/virt.go:758 +0x1067 fp=0xc42059fb78 sp=0xc42059f8f0
github.com/purpleidea/mgmt/pgraph.(*Graph).Process(0xc420643480, 0xc420216220, 0x0, 0x0)
	/home/james/code/gopath/src/github.com/purpleidea/mgmt/pgraph/actions.go:225 +0x1249 fp=0xc42059fe10 sp=0xc42059fb78
github.com/purpleidea/mgmt/pgraph.(*Graph).Worker.func1.1(0x7efe9f8f9508, 0xc420017ea0, 0xc420643480, 0xc420216220, 0xc42000f728, 0xc42000f72a, 0x0, 0xc4205fc840, 0xc42000f729, 0xc4203de0c8, ...)
	/home/james/code/gopath/src/github.com/purpleidea/mgmt/pgraph/actions.go:415 +0x5f fp=0xc42059ff48 sp=0xc42059fe10
runtime.goexit()
	/usr/lib/golang/src/runtime/asm_amd64.s:1998 +0x1 fp=0xc42059ff50 sp=0xc42059ff48
created by github.com/purpleidea/mgmt/pgraph.(*Graph).Worker.func1
	/home/james/code/gopath/src/github.com/purpleidea/mgmt/pgraph/actions.go:434 +0x8c5

function not supported by the connection driver: virStreamSend

I try to to upload an image to libvirt (code: main.txt). Currently I get the following error:

virError(Code=3, Domain=38, Message='this function is not supported by the connection driver: virStreamSend')

What is the problem here? How do one use the Upload function and the Stream struct correctly?

cannot parse json

code: domain.QemuAgentCommand("guest-info", 50*10000, 0)

log:
cmd err:virError(Code=1, Domain=0, Message='internal error: cannot parse json guest-info: lexical error: invalid char in json text.
guest-info
(right here) ------^
')

Compilation error with latest release

Hi,

I had compilation issues with HEAD a few weeks ago so I decided to use tagged release instead, thanks to gopkg.in. But I now have the same compilation issue with 5.6.0:

../../../gopkg.in/libvirt/libvirt-go.v5/domain.go:2071:13: could not determine kind of name for C.virDomainCheckpointPtr
../../../gopkg.in/libvirt/libvirt-go.v5/domain.go:2073:12: could not determine kind of name for C.virDomainListAllCheckpointsWrapper
cgo: 
gcc errors for preamble:
In file included from ../../../gopkg.in/libvirt/libvirt-go.v5/domain.go:32:
./domain_wrapper.h:995:8: error: unknown type name 'virDomainCheckpointPtr'; did you mean 'virDomainSnapshotPtr'?
  995 |        virDomainCheckpointPtr **cps,
      |        ^~~~~~~~~~~~~~~~~~~~~~
      |        virDomainSnapshotPtr
./domain_wrapper.h:999:1: error: unknown type name 'virDomainCheckpointPtr'; did you mean 'virDomainSnapshotPtr'?
  999 | virDomainCheckpointPtr
      | ^~~~~~~~~~~~~~~~~~~~~~
      | virDomainSnapshotPtr
./domain_wrapper.h:1005:1: error: unknown type name 'virDomainCheckpointPtr'; did you mean 'virDomainSnapshotPtr'?
 1005 | virDomainCheckpointPtr
      | ^~~~~~~~~~~~~~~~~~~~~~
      | virDomainSnapshotPtr

How can I fix this? What's the safest way to import this library?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.