Commit Graph

12 Commits

Author SHA1 Message Date
Geoff Hickey
59d541f193
Generate the remaining consts. (#55)
* Generate the remaining consts.

There were a number of hand-written consts in go-libvirt, including flag
values for various libvirt functions. Remove these and generate them
instead, so that we now have a complete set, and the naming is
consistent. I used c-for-go to do this generation, but turned off any
cgo usage by the generated code - we don't want or need to introduce a
dependency on cgo just to get constants from C headers. All code is
still generated using 'go generate ./...', which now calls a wrapper
script for added robustness.

This change also returns to using Go types for flags for most libvirt
functions, instead of plain integers.
2018-01-03 15:19:28 -05:00
Ben LeMasurier
165035e03c
prevent connection write collisions (#52)
* prevent connection write collisions

When multiple calls are made on the same connection, it's possible for
the writes to collide with each other. This adds a write mutex when
communicating with the libvirt daemon.
2017-12-07 10:47:52 -07:00
Geoff Hickey
c73820057a fix an integration test failure. 2017-11-16 17:28:40 -05:00
Geoff Hickey
45342c3080 fix another integration test problem. 2017-11-16 17:16:10 -05:00
Geoff Hickey
71f606ddd7 Add comments to generated code, fix integration test. 2017-11-16 17:14:05 -05:00
Geoff Hickey
1df4a7eec4 fix a trio of compiler warnings
Fix three compiler warnings caused by using format strings in calls to
testing.Error() and Fatal(). Switched to Errorf() and Fatalf().
2017-08-01 16:52:12 -04:00
Ben LeMasurier
2609dd2697 Add Secrets() (#29)
This adds the `Secrets()` method, used to retrieve all secrets managed
by the libvirt daemon.
2017-01-19 20:40:31 -06:00
Ben LeMasurier
cfa567708b Adds StoragePool(), StoragePoolRefresh() (#28)
This adds two new methods:
- `StoragePool()`, used to lookup a storage pool by name.
- `StoragePoolRefresh()`, used to refresh a storage pool by name.
2017-01-09 14:54:30 -07:00
Ben LeMasurier
591f6798f1 Adds StoragePools() (#27)
* Adds StoragePools()

This adds the ability to list storage pools.
2017-01-06 15:58:27 -06:00
Ben LeMasurier
5a1fe4c14a Adds Capabilities()
This adds a new method, Capabilities(), which returns an XML
definition of the hypervisor's system capabilities, much like
`virsh capabilities`.

I've only included integration tests for these two methods due to the
large amount of data returned by the capabilities call.
2016-12-01 14:09:24 -07:00
Ben LeMasurier
c6e0d02f28 Adds support for dumping domain XML
This adds support for dumping a domain's XML definition, akin to `virsh
dumpxml <domain>`. The returned data is quite large so I've included an
integration test rather than adding a huge blob of hex to `libvirttest`.
2016-11-30 19:31:45 -07:00
Ben LeMasurier
4ad0ae7f82 ci: install libvirt for integration testing
This modifies the travis-ci configuration to build and install libvirt
1.2.2 and 2.3.0 for integration testing. Simple integration tests have
been included for Connect() and Disconnect().
2016-10-20 14:53:29 -06:00