By making a lot of compromises.
Not a perfect solution, but still better than not building
virt-manager at all until we've come up with a proper one
I reckon.
¯\_(ツ)_/¯
Andrea Bolognani (2):
guests: Install Python 3 dependencies for virt-manager
jobs: Switch all Python builds to Python 3
guests/host_vars/libvirt-centos-6/main.yml | 1 -
guests/host_vars/libvirt-centos-7/main.yml | 2 --
guests/host_vars/libvirt-debian-8/main.yml | 1 -
guests/host_vars/libvirt-ubuntu-14/main.yml | 1 -
guests/host_vars/libvirt-ubuntu-16/main.yml | 1 -
guests/vars/mappings.yml | 41 ++++++++++++++++-------------
guests/vars/projects/virt-manager.yml | 8 +++---
jobs/python-distutils.yaml | 8 +++---
projects/virt-manager.yaml | 2 +-
9 files changed, 31 insertions(+), 34 deletions(-)
--
2.14.3
Show replies by date
virt-manager is Python 3 only now, so we need to update the
list of packages that gets installed on our guests. In some
cases the Python 3 build of the dependency is not available,
so we have no choice but to stop building virt-manager there.
Signed-off-by: Andrea Bolognani <abologna(a)redhat.com>
---
guests/host_vars/libvirt-centos-7/main.yml | 1 -
guests/host_vars/libvirt-debian-8/main.yml | 1 -
guests/host_vars/libvirt-ubuntu-14/main.yml | 1 -
guests/host_vars/libvirt-ubuntu-16/main.yml | 1 -
guests/vars/mappings.yml | 41 ++++++++++++++++-------------
guests/vars/projects/virt-manager.yml | 8 +++---
6 files changed, 26 insertions(+), 27 deletions(-)
diff --git a/guests/host_vars/libvirt-centos-7/main.yml
b/guests/host_vars/libvirt-centos-7/main.yml
index 30c826a..8338f99 100644
--- a/guests/host_vars/libvirt-centos-7/main.yml
+++ b/guests/host_vars/libvirt-centos-7/main.yml
@@ -13,5 +13,4 @@ projects:
- libvirt-sandbox
- osinfo-db
- osinfo-db-tools
- - virt-manager
- virt-viewer
diff --git a/guests/host_vars/libvirt-debian-8/main.yml
b/guests/host_vars/libvirt-debian-8/main.yml
index f097792..ecf9cd3 100644
--- a/guests/host_vars/libvirt-debian-8/main.yml
+++ b/guests/host_vars/libvirt-debian-8/main.yml
@@ -11,5 +11,4 @@ projects:
- libvirt-python
- libvirt-tck
- osinfo-db-tools
- - virt-manager
- virt-viewer
diff --git a/guests/host_vars/libvirt-ubuntu-14/main.yml
b/guests/host_vars/libvirt-ubuntu-14/main.yml
index 18b013d..c11dd5b 100644
--- a/guests/host_vars/libvirt-ubuntu-14/main.yml
+++ b/guests/host_vars/libvirt-ubuntu-14/main.yml
@@ -7,5 +7,4 @@ projects:
- libvirt-python
- libvirt-tck
- osinfo-db-tools
- - virt-manager
- virt-viewer
diff --git a/guests/host_vars/libvirt-ubuntu-16/main.yml
b/guests/host_vars/libvirt-ubuntu-16/main.yml
index 7baecf7..190f174 100644
--- a/guests/host_vars/libvirt-ubuntu-16/main.yml
+++ b/guests/host_vars/libvirt-ubuntu-16/main.yml
@@ -11,5 +11,4 @@ projects:
- libvirt-sandbox
- libvirt-tck
- osinfo-db-tools
- - virt-manager
- virt-viewer
diff --git a/guests/vars/mappings.yml b/guests/vars/mappings.yml
index 440123c..579deb4 100644
--- a/guests/vars/mappings.yml
+++ b/guests/vars/mappings.yml
@@ -555,21 +555,6 @@ mappings:
pkg: python27
rpm: python2-devel
- python2-gi:
- deb: python-gi
- pkg: py27-gobject3
- rpm: python-gobject
- CentOS6:
-
- python2-ipaddr:
- default: python-ipaddr
- FreeBSD: py27-ipaddr
-
- python2-libxml2:
- default: python-libxml2
- pkg: py27-libxml2
- CentOS: libxml2-python
-
python2-lxml:
default: python-lxml
Fedora: python2-lxml
@@ -580,16 +565,28 @@ mappings:
Fedora: python2-nose
FreeBSD: py27-nose
- python2-requests:
- default: python-requests
- Fedora: python2-requests
- FreeBSD: py27-requests
+ python3:
+ default: python3
+ CentOS:
python3-devel:
deb: python3-dev
pkg: python36
Fedora: python3-devel
+ python3-gi:
+ deb: python3-gi
+ pkg: py36-gobject3
+ rpm: python3-gobject
+ CentOS:
+
+ python3-libxml2:
+ default: python3-libxml2
+ FreeBSD: py36-libxml2
+ CentOS:
+ Ubuntu:
+ Debian8:
+
python3-lxml:
default: python3-lxml
FreeBSD: py36-lxml
@@ -600,6 +597,12 @@ mappings:
FreeBSD: py36-nose
CentOS:
+ python3-requests:
+ default: python3-requests
+ FreeBSD: py36-requests
+ CentOS:
+ Ubuntu12:
+
qemu-img:
default: qemu-utils
rpm: qemu-img
diff --git a/guests/vars/projects/virt-manager.yml
b/guests/vars/projects/virt-manager.yml
index 474017f..e9e5324 100644
--- a/guests/vars/projects/virt-manager.yml
+++ b/guests/vars/projects/virt-manager.yml
@@ -1,8 +1,8 @@
---
packages:
- intltool
- - python2-gi
- - python2-ipaddr
- - python2-libxml2
- - python2-requests
+ - python3
+ - python3-gi
+ - python3-libxml2
+ - python3-requests
- unzip
--
2.14.3
virt-manager is Python 3 only now, so using Python 2 to call
its build script will not work.
Moreover, since we build and test it against our local copy of
libvirt-python, we need to make sure libvirt-python itself is
built for Python 3. At the moment, we don't have support for
building against several Python versions, so our only option is
to switch from Python 2 to Python 3 entirely.
We don't lose all build coverage for the Python 2 bits thanks
to the fact that the libvirt-python-master-rpm job will still
build both python2-libvirt and python3-libvirt, but we
definitely want to come up with a better solution in the long
run.
Signed-off-by: Andrea Bolognani <abologna(a)redhat.com>
---
guests/host_vars/libvirt-centos-6/main.yml | 1 -
guests/host_vars/libvirt-centos-7/main.yml | 1 -
jobs/python-distutils.yaml | 8 ++++----
projects/virt-manager.yaml | 2 +-
4 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/guests/host_vars/libvirt-centos-6/main.yml
b/guests/host_vars/libvirt-centos-6/main.yml
index d717ae7..c3651f3 100644
--- a/guests/host_vars/libvirt-centos-6/main.yml
+++ b/guests/host_vars/libvirt-centos-6/main.yml
@@ -5,4 +5,3 @@ projects:
- libvirt
- libvirt-cim
- libvirt-perl
- - libvirt-python
diff --git a/guests/host_vars/libvirt-centos-7/main.yml
b/guests/host_vars/libvirt-centos-7/main.yml
index 8338f99..15812ae 100644
--- a/guests/host_vars/libvirt-centos-7/main.yml
+++ b/guests/host_vars/libvirt-centos-7/main.yml
@@ -9,7 +9,6 @@ projects:
- libvirt-go
- libvirt-go-xml
- libvirt-perl
- - libvirt-python
- libvirt-sandbox
- osinfo-db
- osinfo-db-tools
diff --git a/jobs/python-distutils.yaml b/jobs/python-distutils.yaml
index 47b25f1..a6fd107 100644
--- a/jobs/python-distutils.yaml
+++ b/jobs/python-distutils.yaml
@@ -43,8 +43,8 @@
{global_env}
{local_env}
{command_pre_build}
- python2 setup.py build
- python2 setup.py install --prefix=$VIRT_PREFIX
+ python3 setup.py build
+ python3 setup.py install --prefix=$VIRT_PREFIX
publishers:
- email:
recipients: '{obj:spam}'
@@ -83,7 +83,7 @@
- shell: |
{global_env}
{local_env}
- python2 setup.py test
+ python3 setup.py test
publishers:
- email:
recipients: '{obj:spam}'
@@ -122,7 +122,7 @@
{global_env}
{local_env}
sed -i -e 's/BuildRequires: libvirt.*devel.*//' *.spec.in
- python2 setup.py rpm
+ python3 setup.py rpm
publishers:
- email:
recipients: '{obj:spam}'
diff --git a/projects/virt-manager.yaml b/projects/virt-manager.yaml
index c1d198b..6a99a91 100644
--- a/projects/virt-manager.yaml
+++ b/projects/virt-manager.yaml
@@ -17,7 +17,7 @@
- 'libvirt-python-master-build'
- 'libosinfo-master-build'
command_pre_build: |
- python2 setup.py configure --prefix=$VIRT_PREFIX
+ python3 setup.py configure --prefix=$VIRT_PREFIX
- python-distutils-check-job:
parent_jobs: 'virt-manager-master-build'
- python-distutils-rpm-job:
--
2.14.3