Commit Graph

11210 Commits

Author SHA1 Message Date
Pino Toscano
dea9636c59 Remove remaining virt-p2v bits
Remove (almost) all the remaining bits related to virt-p2v.
2019-09-10 17:52:16 +02:00
Pino Toscano
2c02adb8ba Remove virt-p2v
This removes only the tool itself, and all the bits strictly needed to
not break the build.

This is now available as separate tool in its own repository:
https://github.com/libguestfs/virt-p2v
2019-09-10 17:52:16 +02:00
Eric Blake
730642676b drives: Typo fix
Favor 'atomically' over 'atomicly'.

Signed-off-by: Eric Blake <eblake@redhat.com>
2019-09-10 16:40:17 +01:00
Daniel Erez
eeabb3fdc7 v2v: rhv-upload-plugin - improve wait logic after finalize (RHBZ#1680361)
After invoking transfer_service.finalize, check operation status by
examining DiskStatus.  This is done instead of failing after a
predefined timeout regardless the status.

Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1680361
Signed-off-by: Richard W.M. Jones <rjones@redhat.com>
Tested-by: Ilanit Stein <istein@redhat.com>
2019-09-09 17:04:18 +01:00
Chris Lamb
d58c4e79d8 Make the build reproducible
Whilst working on the Reproducible Builds effort [0] we noticed
that libnbd could not be built reproducibly.

This is due to it shipping a pod generation wrapper that
does not use/respect SOURCE_DATE_EPOCH [1] and additionally
varies the output depending on the build user's current
timezone.

(This was originally filed in Debian as #939546 [2].)

 [0] https://reproducible-builds.org/
 [1] https://reproducible-builds.org/docs/source-date-epoch/
 [2] https://bugs.debian.org/939546

Signed-off-by: Chris Lamb <lamby@debian.org>
2019-09-06 09:42:35 +01:00
Richard W.M. Jones
a0f9553d21 html: Link within all libguestfs projects. 2019-09-05 15:11:40 +01:00
Richard W.M. Jones
74ce7332db ocaml: Change calls to caml_named_value() to cope with const value* return.
In OCaml >= 4.09 the return value pointer of caml_named_value is
declared const.

Based on Pino Toscano's original patch to ocaml-augeas.
2019-09-05 09:00:14 +01:00
Nir Soffer
fcfdbc9420 v2v: Set DISKTYPE=2 in RHV and VDSM meta files (RHBZ#1746699).
Added in virt-p2v commit:

  commit e83b6f50af34ce650063ecc520bfabab400e8e73
  Author: Matthew Booth <mbooth@redhat.com>
  Date:   Fri Mar 26 09:40:20 2010 +0000

    Add export to RHEV

    Allow guests to be written to a RHEV NFS export storage domain.

    Add 'rhev' output method and -osd command-line option.
    Example command line:

     virt-v2v -f virt-v2v.conf -ic 'esx://yellow.rhev.marston/' \
              -o rhev -osd blue:/export/export RHEL3-32

    This will connect to an ESX server and write the guest 'RHEL3-32' to
    blue:/export/export, which is a pre-initialised RHEV export storage domain.
2019-09-02 21:20:27 +01:00
Richard W.M. Jones
bf5ee2fb21 Version 1.41.4. v1.41.4 2019-09-02 19:45:12 +01:00
Richard W.M. Jones
bbe4490795 rust: Don't add Cargo.lock to EXTRA_DIST.
It's a file generated by cargo.  If cargo is not installed then this
breaks ‘make dist’.
2019-09-02 19:28:30 +01:00
Richard W.M. Jones
ad58324c70 Version 1.41.3. v1.41.3 2019-09-02 12:56:12 +01:00
Richard W.M. Jones
cce016dfe3 docs: Remove p2v/ directory from generated docs files.
make[2]: *** No rule to make target '../p2v/about-authors.c', needed by 'internal-documentation.pod'.  Stop.

Since we're going to remove the whole p2v subdirectory shortly anyway,
it was simplest to ignore the whole directory.
2019-09-02 12:34:07 +01:00
Richard W.M. Jones
e8ab5b451a Version 1.41.2. v1.41.2 2019-09-02 12:23:28 +01:00
Richard W.M. Jones
0d0c3eb1dd docs: Remove generated file common/mllibvirt/libvirt_c.c.
Avoids this error when building from git:

make[2]: *** No rule to make target '../common/mllibvirt/libvirt_c.c', needed by 'internal-documentation.pod'.  Stop.

This file doesn't have any generated docs or gettext annotations in it
so adding it to these files is useless anyway.
2019-09-02 12:22:25 +01:00
Richard W.M. Jones
2a5ea2892e Version 1.41.1. v1.41.1 2019-09-02 10:12:38 +01:00
Richard W.M. Jones
3f8609434f rust: Add more source files to EXTRA_DIST.
Fixes commit 3f7ff1b068.
2019-09-02 10:01:05 +01:00
Richard W.M. Jones
ffd0b5484d Revert "rust: Add missing file to EXTRA_DIST."
This reverts commit 9a6d162852.

(This file was later removed in
commit 3f7ff1b0689408695d21b4c50384fa24b47e5e8f.)
2019-09-02 10:01:05 +01:00
Richard W.M. Jones
15d1611889 python: Ignore -Wcast-align warnings in Python 3.8 header files.
Disable this warning/error in the Python 3.8 header files:

In file included from /usr/include/python3.8/abstract.h:837,
                 from /usr/include/python3.8/Python.h:147,
                 from actions.h:31,
                 from actions-6.c:34:
/usr/include/python3.8/cpython/abstract.h: In function '_PyVectorcall_Function':
/usr/include/python3.8/cpython/abstract.h:91:11: error: cast increases required alignment of target type [-Werror=cast-align]
   91 |     ptr = (vectorcallfunc*)(((char *)callable) + offset);
      |           ^
2019-09-02 09:00:18 +01:00
Richard W.M. Jones
451e6a7b97 python: Include <Python.h> in one place.
Previously to work around some problems in Python 2 header files we
had to include <Python.h> before any other config file.

For Python 3 which is all we really care about now this is no longer
needed.  We can move the include from three files into the local
"actions.h" file, bringing all the Python definitions and workarounds
into a single place.
2019-09-02 09:00:18 +01:00
Pino Toscano
2581d3c25e build: disable deprecated GTK stuff
We are not using deprecated GTK APIs/stuff, so make sure to not
accidentally use them, and easily catch more deprecations in the future.
2019-09-02 09:00:18 +01:00
Pino Toscano
ff7d94faf8 Copy GtkAttachOptions from GTK >= 3.4
GtkAttachOptions is part of GtkTable, which is used only with GTK < 3.4;
however, these enum values are used also in the GtkGrid version of the
code, so they are needed also when disabling deprecated stuff.

As easy solution to make the current code working without deprecated
stuff of GTK, copy the GtkAttachOptions enum when using GtkGrid (i.e.
with GTK >= 3.4).
2019-09-02 09:00:18 +01:00
Richard W.M. Jones
0731767a20 ocaml: Compile compat bytes.mli file. 2019-08-20 18:10:41 +01:00
Richard W.M. Jones
031016444a m4: ocaml: Remove unused definitions of OCAML_BYTES_COMPAT_*
These were last used in commit 024efc0f2f
and commit 8d09d716aa (both in Jul 2017).
2019-08-20 18:08:43 +01:00
Richard W.M. Jones
4b9efadce2 v2v: Fix missing backslash character in list of tests.
Fixes commit c0d95dcde8.
2019-08-20 17:43:10 +01:00
Richard W.M. Jones
2fbf9a3f94 Update gnulib.
Contains fix for a bug where it would always compile the
replacement accept4 function.

https://lists.gnu.org/archive/html/bug-gnulib/2019-08/msg00029.html

Thanks: Eric Blake
2019-08-20 17:32:19 +01:00
Richard W.M. Jones
11923627cd builder: templates: Add Debian 10 (buster). 2019-08-20 16:59:56 +01:00
Richard W.M. Jones
2cd905f093 Update gnulib. 2019-08-20 16:11:49 +01:00
Richard W.M. Jones
c873e04b26 Update docs/C_SOURCE_FILES. 2019-08-20 16:11:49 +01:00
Pino Toscano
5d94be2583 generator: improve pod2text invocation
- feed the content directly to stdin, avoid the need of read (and write)
  a temporary file
- read all the output at once, without a tail-recursive function
- apply trimming and first line discarding after closing the process
2019-08-13 16:01:25 +02:00
Pino Toscano
81a01f20c3 generator: adjust variable names
Rename some pod2text-related variables to better-fitting names.

This is just a small refactoring.
2019-08-13 13:45:13 +02:00
Pino Toscano
da0137e828 generator: isolate memoized cache in own module
Isolate the logic for the memoized disk cache in a small module, so it
can be reused for other tools.

Other than refactoring, there should be no behaviour changes.
2019-08-13 13:19:17 +02:00
Pino Toscano
8402a73465 v2v: -o rhv-upload: fix the phony ovirtsdk4 module
- add a no-op Connection.close(), as it called explicitly in the
  close() callback of the nbdkit plugin (rhv-upload-plugin.py)
- fix the types of the 'id' variables, which are strings
2019-08-13 07:43:42 +02:00
Pino Toscano
0c261637f9 Fix small issues in documentations of APIs
- fix names of arguments & optional arguments in C<..> markers
- use https for URLs where possible
- fix links to other guestfs APIs
- use more C<..> markers for special tests, shell commands, values of
  arguments, and names of fields
- link to command man pages where an explicit command is mentioned
- fix few incorrect documentation bits
2019-08-13 07:43:42 +02:00
Richard W.M. Jones
52c7e787d2 rust: Add README.md to EXTRA_DIST.
Fixes previous commit.
2019-08-12 20:36:28 +01:00
Hiroyuki Katsura
212f1a5f71 Rust bindings: Make it able to publish this crate
I added
- data required to publish this crate to `crates.io`.
- README.md which contains the details of how to publish this crate.
2019-08-12 20:34:47 +01:00
Richard W.M. Jones
dcfa382b27 v2v: Remove double space.
Tiny whitespace-only fix.
2019-08-09 12:51:10 +01:00
Richard W.M. Jones
4f30db5ae4 Update gnulib to latest version.
This fixes some test breakage I was experiencing with recent
kernel/glibc.
2019-08-08 13:17:37 +01:00
Richard W.M. Jones
7692c31494 v2v: -i vmx: Use scp -T option if available to unbreak scp (RHBZ#1733168).
Tested using:

cd v2v
LIBGUESTFS_BACKEND=direct ../run virt-v2v -i vmx -it ssh "ssh://localhost/$PWD/test-v2v-i-vmx-1.vmx" -o null -v -x

and manually examining the debug output.

Thanks: Ming Xie, Jakub Jelen.
2019-08-08 12:08:17 +01:00
Hiroyuki Katsura
3f7ff1b068 Rust bindings: Implement callback handlers
This patch includes:

- Event callback handlers
- Tests related to events(410-430)

src/bin/event.rs and src/bin/event_leak.rs
are the PoCs that Boxes related to callbacks are
not leaked.
2019-08-06 14:54:04 +01:00
Hiroyuki Katsura
bb0cb3e730 Rust bindings: Add Event structs, Clarify Handle lifetime
Without clarifying handle's lifetime, it is unable
to see how long the callbacks which the handle
owns will live. Then, Rust compiler will infer
that the callbacks have 'static lifetime. It is
not convenient for users.
2019-08-06 14:54:04 +01:00
Richard W.M. Jones
ab09bc25c7 build: Update miscellaneous files.
BUGS
docs/C_SOURCE_FILES
po/POTFILES
po/POTFILES-ml

These files are normally updated by ‘make dist’ but as we've not had a
release in a while they had not been updated for some time.
2019-07-29 12:57:24 +01:00
Richard W.M. Jones
b81c252e44 p2v: Add .gitignore to EXTRA_DIST.
Fixes commit 9fe175cd76.
2019-07-29 12:55:22 +01:00
Richard W.M. Jones
34a0a724c0 v2v: Fix EXTRA_DIST.
Fixes commit a27748d700.
2019-07-29 12:54:11 +01:00
Richard W.M. Jones
97e2be01b5 common/mltools: Fix EXTRA_DIST.
Fixes commit f79129b8dc.
2019-07-29 12:53:14 +01:00
Richard W.M. Jones
9a6d162852 rust: Add missing file to EXTRA_DIST. 2019-07-29 12:22:20 +01:00
Richard W.M. Jones
94f20e2511 rust: Remove rust/.gitignore from EXTRA_DIST.
Fixes commit b484ca4da1.
2019-07-29 12:18:17 +01:00
Richard W.M. Jones
45e66a567d generator: Use ~copyrights shorthand for ~copyrights:copyrights 2019-07-29 12:15:32 +01:00
Richard W.M. Jones
e6f5ec35cc generator: copywrites -> copyrights 2019-07-29 12:14:23 +01:00
Richard W.M. Jones
b484ca4da1 rust: Move .gitignore to top level file and add extra files. 2019-07-29 12:12:14 +01:00
Hiroyuki_Katsura
3bbd00c83e Rust bindings: Add Rust bindings
This patch includes Actions and their tests. Missing:

- Events
- Examples

Rust bindings: Add create / close functions

Rust bindings: Add 4 bindings tests

Rust bindings: Add generator of structs

Rust bindings: Add generator of structs for optional arguments

Rust bindings: Add generator of function signatures

Rust bindings: Complete actions

Rust bindings: Fix memory management

Rust bindings: Add bindtests

Rust bindings: Add additional 4 bindings tests

Rust bindings: Format test files

Rust bindings: Incorporate bindings to build system
2019-07-29 10:28:31 +01:00