File: guestfs-golang.pod

package info (click to toggle)
libguestfs 1%3A1.54.1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 98,892 kB
  • sloc: ansic: 379,443; ml: 38,771; sh: 10,329; java: 9,631; cs: 6,377; haskell: 5,729; makefile: 5,178; python: 3,821; perl: 2,467; erlang: 2,461; ruby: 349; xml: 275; pascal: 257; javascript: 157; cpp: 10
file content (98 lines) | stat: -rw-r--r-- 2,220 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
=head1 NAME

guestfs-golang - How to use libguestfs from Go

=head1 SYNOPSIS

 import "libguestfs.org/guestfs"
 
 g, errno := guestfs.Create ()
 if errno != nil {
     panic (fmt.Sprintf ("could not create handle: %s", errno))
 }
 defer g.Close ()
 if err := g.Add_drive ("test.img"); err != nil {
     panic (err)
 }
 if err := g.Launch (); err != nil {
     panic (err)
 }
 if err := g.Shutdown (); err != nil {
     panic (err)
 }

=head1 DESCRIPTION

This manual page documents how to call libguestfs from the Go
programming language.  This page just documents the differences from
the C API and gives some examples.  If you are not familiar with using
libguestfs, you also need to read L<guestfs(3)>.

=head2 IMPORTING THE MODULE

The module is called C<guestfs>.  The full package name to import is
C<libguestfs.org/guestfs>.

=head2 CREATING AND CLOSING THE HANDLE

Use either C<guestfs.Create> or C<guestfs.Create_flags> to create the
handle.  The handle is closed implicitly if it is garbage collected.
However it is probably a good idea to close it explicitly, either by
calling S<C<g.Close ()>> or by deferring the same.

=head2 ERRORS

C<guestfs.Create> and C<guestfs.Create_flags> return a simple
C<*error>, which is really just a C C<errno> wrapped up in the
appropriate golang struct.

All other calls return a C<*GuestfsError> which (if non-nil) is a
richer struct that contains the error string from libguestfs, the
errno (if available) and the operation which failed.  This can also be
converted to a string for display.

=head2 LIMITATIONS

=over 4

=item *

No support for events (see L<guestfs(3)/EVENTS>).

=item *

UUIDs are not returned in structures.

=back

=head1 EXAMPLE 1: CREATE A DISK IMAGE

@EXAMPLE1@

=head1 EXAMPLE 2: INSPECT A VIRTUAL MACHINE DISK IMAGE

@EXAMPLE2@

=head1 SEE ALSO

L<guestfs(3)>,
L<guestfs-examples(3)>,
L<guestfs-erlang(3)>,
L<guestfs-gobject(3)>,
L<guestfs-java(3)>,
L<guestfs-lua(3)>,
L<guestfs-ocaml(3)>,
L<guestfs-perl(3)>,
L<guestfs-python(3)>,
L<guestfs-recipes(1)>,
L<guestfs-ruby(3)>,
L<http://www.golang.org/>,
L<http://libguestfs.org/>.

=head1 AUTHORS

Richard W.M. Jones (C<rjones at redhat dot com>)

=head1 COPYRIGHT

Copyright (C) 2013 Red Hat Inc.