summaryrefslogtreecommitdiff
path: root/vendor/github.com/digitalocean/go-libvirt/doc.go
diff options
context:
space:
mode:
authorbaude <bbaude@redhat.com>2021-03-15 14:52:43 -0500
committerbaude <bbaude@redhat.com>2021-03-25 08:43:51 -0500
commitb5f54a9b23e8d9418700494da9aa78d8db354c43 (patch)
tree59dfb9edf3faf6d184f6af40522f71968948133a /vendor/github.com/digitalocean/go-libvirt/doc.go
parenta861f6fd3ebe4fe0b63a1b550e6b99d7525228c0 (diff)
downloadpodman-b5f54a9b23e8d9418700494da9aa78d8db354c43.tar.gz
podman-b5f54a9b23e8d9418700494da9aa78d8db354c43.tar.bz2
podman-b5f54a9b23e8d9418700494da9aa78d8db354c43.zip
introduce podman machine
podman machine allows podman to create, manage, and interact with a vm running some form of linux (default is fcos). podman is then configured to be able to interact with the vm automatically. while this is usable on linux, the real push is to get this working on both current apple architectures in macos. Ashley Cui contributed to this PR and was a great help. [NO TESTS NEEDED] Signed-off-by: baude <bbaude@redhat.com>
Diffstat (limited to 'vendor/github.com/digitalocean/go-libvirt/doc.go')
-rw-r--r--vendor/github.com/digitalocean/go-libvirt/doc.go76
1 files changed, 76 insertions, 0 deletions
diff --git a/vendor/github.com/digitalocean/go-libvirt/doc.go b/vendor/github.com/digitalocean/go-libvirt/doc.go
new file mode 100644
index 000000000..1229f30c8
--- /dev/null
+++ b/vendor/github.com/digitalocean/go-libvirt/doc.go
@@ -0,0 +1,76 @@
+// Copyright 2016 The go-libvirt Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+/*
+ Package libvirt provides a pure Go interface for Libvirt.
+
+ Rather than using Libvirt's C bindings, this package makes use of
+ Libvirt's RPC interface, as documented here: https://libvirt.org/internals/rpc.html.
+ Connections to the libvirt server may be local, or remote. RPC packets are encoded
+ using the XDR standard as defined by RFC 4506.
+
+ This should be considered a work in progress. Most functionaly provided by the C
+ bindings have not yet made their way into this library. Pull requests are welcome!
+ The definition of the RPC protocol is in the libvirt source tree under src/rpc/virnetprotocol.x.
+
+ Example usage:
+
+ package main
+
+ import (
+ "fmt"
+ "log"
+ "net"
+ "time"
+
+ "github.com/digitalocean/go-libvirt"
+ )
+
+ func main() {
+ //c, err := net.DialTimeout("tcp", "127.0.0.1:16509", 2*time.Second)
+ //c, err := net.DialTimeout("tcp", "192.168.1.12:16509", 2*time.Second)
+ c, err := net.DialTimeout("unix", "/var/run/libvirt/libvirt-sock", 2*time.Second)
+ if err != nil {
+ log.Fatalf("failed to dial libvirt: %v", err)
+ }
+
+ l := libvirt.New(c)
+ if err := l.Connect(); err != nil {
+ log.Fatalf("failed to connect: %v", err)
+ }
+
+ v, err := l.Version()
+ if err != nil {
+ log.Fatalf("failed to retrieve libvirt version: %v", err)
+ }
+ fmt.Println("Version:", v)
+
+ domains, err := l.Domains()
+ if err != nil {
+ log.Fatalf("failed to retrieve domains: %v", err)
+ }
+
+ fmt.Println("ID\tName\t\tUUID")
+ fmt.Printf("--------------------------------------------------------\n")
+ for _, d := range domains {
+ fmt.Printf("%d\t%s\t%x\n", d.ID, d.Name, d.UUID)
+ }
+
+ if err := l.Disconnect(); err != nil {
+ log.Fatal("failed to disconnect: %v", err)
+ }
+ }
+*/
+
+package libvirt