Grrr, I keep forgetting something within '--subject-prefix=' when sending these patches... On 11/25/19 5:50 PM, Jim Fehlig wrote: > This change adds support for the latest openSUSE Leap and > openSUSE Tumbleweed guests. > > Signed-off-by: Jim Fehlig <jfehlig@xxxxxxxx> > --- > > This version of the patch overcomes the 'lci build' issues noted in V1 > and works well for openSUSE Leap 15.1 and Tumbleweed. I'm still of the > opinion of only supporting the latest Leap since there is only a six > month support overlap between versions. Version x-1 is only supported > six months after x is released. > > 'lci update ... libvirt' fails in task "Configure hostname": > > fatal: [libvirt-opensuse-tumbleweed]: FAILED! => {"changed": false, "msg": "hostname module cannot be used on platform Linux (Opensuse-tumbleweed)"} > > Not sure why that is the case. But more importantly, even though it > doesn't fail, the "Update installed packages" task doesn't install any > of the packages required to build libvirt. I suppose that agrees with > guests/REAMDME, but how then are the packages required to build $project > installed? How/when is the list of packages required to build $project > conveyed to $package_manager? > > 'lcitool build libvirt-opensuse-tumbleweed libvirt' fails in the > "Gathering Facts" task: > > fatal: [libvirt-opensuse-tumbleweed]: UNREACHABLE! => {"changed": false, "msg": "Invalid/incorrect password: ", "unreachable": true} > > Passing --debug to the command didn't help with determining what needed > the password. ssh? I can't find where the "Gathering Facts" task is > defined. The $root_password_file passed to /usr/bin/ansible-playbook > contains the correct password for the root user. /me needs to figure > out how to better debug this stuff :-). > > guests/configs/autoinst.xml | 75 +++++++++++++++++++ > .../host_vars/libvirt-opensuse-15/docker.yml | 2 + > .../host_vars/libvirt-opensuse-15/install.yml | 2 + > guests/host_vars/libvirt-opensuse-15/main.yml | 22 ++++++ > .../libvirt-opensuse-tumbleweed/docker.yml | 2 + > .../libvirt-opensuse-tumbleweed/install.yml | 2 + > .../libvirt-opensuse-tumbleweed/main.yml | 22 ++++++ > guests/inventory | 2 + > guests/lcitool | 2 + > guests/playbooks/update/tasks/base.yml | 15 ++++ > guests/vars/mappings.yml | 41 +++++++++- > 11 files changed, 185 insertions(+), 2 deletions(-) > > diff --git a/guests/configs/autoinst.xml b/guests/configs/autoinst.xml > new file mode 100644 > index 0000000..42c42f8 > --- /dev/null > +++ b/guests/configs/autoinst.xml > @@ -0,0 +1,75 @@ > +<?xml version="1.0"?> > +<!DOCTYPE profile> > +<profile > + xmlns="http://www.suse.com/1.0/yast2ns" > + xmlns:config="http://www.suse.com/1.0/configns"> > + <general> > + <mode> > + <confirm config:type="boolean">false</confirm> > + </mode> > + </general> > + <partitioning config:type="list"> > + <drive> > + <device>/dev/vda</device> > + <use>all</use> > + <partitions config:type="list"> > + <partition> > + <filesystem config:type="symbol">swap</filesystem> > + <size>256M</size> > + <mount>swap</mount> > + </partition> > + <partition> > + <filesystem config:type="symbol">ext4</filesystem> > + <mount>/</mount> > + <size>max</size> > + </partition> > + </partitions> > + </drive> > + </partitioning> > + <bootloader> > + <global> > + <terminal>console serial</terminal> > + </global> > + </bootloader> > + <timezone> > + <hwclock>UTC</hwclock> > + <timezone>UTC</timezone> > + </timezone> > + <software> > + <install_recommended config:type="boolean">false</install_recommended> > + <products config:type="list"> > + <product>openSUSE</product> > + </products> > + <patterns config:type="list"> > + <pattern>base</pattern> > + <pattern>minimal_base</pattern> > + <pattern>yast2_basis</pattern> > + </patterns> > + <packages config:type="list"> > + <package>openssh</package> > + </packages> > + </software> > + <networking> > + <keep_install_network config:type="boolean">true</keep_install_network> > + </networking> > + <users config:type="list"> > + <user> > + <username>root</username> > + <user_password>root</user_password> > + <encrypted config:type="boolean">false</encrypted> > + <uid>0</uid> > + <gid>0</gid> > + <home>/root</home> > + <shell>/bin/bash</shell> > + </user> > + </users> > + <services-manager> > + <default_target>multi-user</default_target> > + <services config:type="list"> > + <service> > + <service_name>sshd</service_name> > + <service_status>enable</service_status> > + </service> > + </services> > + </services-manager> > +</profile> > diff --git a/guests/host_vars/libvirt-opensuse-15/docker.yml b/guests/host_vars/libvirt-opensuse-15/docker.yml > new file mode 100644 > index 0000000..8f32d06 > --- /dev/null > +++ b/guests/host_vars/libvirt-opensuse-15/docker.yml > @@ -0,0 +1,2 @@ > +--- > +docker_base: opensuse/leap:15 > diff --git a/guests/host_vars/libvirt-opensuse-15/install.yml b/guests/host_vars/libvirt-opensuse-15/install.yml > new file mode 100644 > index 0000000..d0fdbe5 > --- /dev/null > +++ b/guests/host_vars/libvirt-opensuse-15/install.yml > @@ -0,0 +1,2 @@ > +--- > +install_url: http://download.opensuse.org/distribution/leap/15.1/repo/oss/ > diff --git a/guests/host_vars/libvirt-opensuse-15/main.yml b/guests/host_vars/libvirt-opensuse-15/main.yml > new file mode 100644 > index 0000000..abd83c5 > --- /dev/null > +++ b/guests/host_vars/libvirt-opensuse-15/main.yml > @@ -0,0 +1,22 @@ > +--- > +projects: > + - libosinfo > + - libvirt > + - libvirt-cim > + - libvirt-dbus > + - libvirt-glib > + - libvirt-perl > + - libvirt-python > + - libvirt-sandbox > + - libvirt-tck > + - osinfo-db > + - osinfo-db-tools > + - virt-manager > + - virt-viewer > + > +package_format: 'rpm' > +package_manager: 'zypper' > +os_name: 'OpenSUSE' > +os_version: '15' > + > +ansible_python_interpreter: /usr/bin/python3 > diff --git a/guests/host_vars/libvirt-opensuse-tumbleweed/docker.yml b/guests/host_vars/libvirt-opensuse-tumbleweed/docker.yml > new file mode 100644 > index 0000000..cc79a22 > --- /dev/null > +++ b/guests/host_vars/libvirt-opensuse-tumbleweed/docker.yml > @@ -0,0 +1,2 @@ > +--- > +docker_base: opensuse/tumbleweed > diff --git a/guests/host_vars/libvirt-opensuse-tumbleweed/install.yml b/guests/host_vars/libvirt-opensuse-tumbleweed/install.yml > new file mode 100644 > index 0000000..36cea68 > --- /dev/null > +++ b/guests/host_vars/libvirt-opensuse-tumbleweed/install.yml > @@ -0,0 +1,2 @@ > +--- > +install_url: http://download.opensuse.org/tumbleweed/repo/oss/ > diff --git a/guests/host_vars/libvirt-opensuse-tumbleweed/main.yml b/guests/host_vars/libvirt-opensuse-tumbleweed/main.yml > new file mode 100644 > index 0000000..828df81 > --- /dev/null > +++ b/guests/host_vars/libvirt-opensuse-tumbleweed/main.yml > @@ -0,0 +1,22 @@ > +--- > +projects: > + - libosinfo > + - libvirt > + - libvirt-cim > + - libvirt-dbus > + - libvirt-glib > + - libvirt-perl > + - libvirt-python > + - libvirt-sandbox > + - libvirt-tck > + - osinfo-db > + - osinfo-db-tools > + - virt-manager > + - virt-viewer > + > +package_format: 'rpm' > +package_manager: 'zypper' > +os_name: 'OpenSUSE' > +os_version: 'Tumbleweed' > + > +ansible_python_interpreter: /usr/bin/python3 > diff --git a/guests/inventory b/guests/inventory > index 3b15513..71d3c91 100644 > --- a/guests/inventory > +++ b/guests/inventory > @@ -8,5 +8,7 @@ libvirt-fedora-rawhide > libvirt-freebsd-11 > libvirt-freebsd-12 > libvirt-freebsd-current > +libvirt-opensuse-15 > +libvirt-opensuse-tumbleweed > libvirt-ubuntu-16 > libvirt-ubuntu-18 > diff --git a/guests/lcitool b/guests/lcitool > index a630971..7f26731 100755 > --- a/guests/lcitool > +++ b/guests/lcitool > @@ -531,6 +531,8 @@ class Application: > install_config = "preseed.cfg" > elif facts["os_name"] in ["CentOS", "Fedora"]: > install_config = "kickstart.cfg" > + elif facts["os_name"] == "OpenSUSE": > + install_config = "autoinst.xml" > else: > raise Exception( > "Host {} doesn't support installation".format(host) > diff --git a/guests/playbooks/update/tasks/base.yml b/guests/playbooks/update/tasks/base.yml > index 3d83e78..b6a2cd2 100644 > --- a/guests/playbooks/update/tasks/base.yml > +++ b/guests/playbooks/update/tasks/base.yml > @@ -65,12 +65,27 @@ > when: > - package_format == 'pkg' > > +- name: Update installed packages > + command: '{{ package_manager }} update -y -l --force-resolution --no-recommends' > + args: > + warn: no > + when: > + - os_name == 'OpenSUSE' > + > - name: Clean up packages after update > shell: '{{ package_manager }} clean packages -y && {{ package_manager }} autoremove -y' > args: > warn: no > when: > - package_format == 'rpm' > + - not os_name == "OpenSUSE" > + > +- name: Clean up packages after update > + shell: '{{ package_manager }} clean' > + args: > + warn: no > + when: > + - os_name == "OpenSUSE" > > - name: Clean up packages after update > apt: > diff --git a/guests/vars/mappings.yml b/guests/vars/mappings.yml > index bd9b161..8359ce2 100644 > --- a/guests/vars/mappings.yml > +++ b/guests/vars/mappings.yml > @@ -19,10 +19,10 @@ > # - deb, pkg, rpm > # > # Valid OS names are: > -# - CentOS, Debian, Fedora, FreeBSD, Ubuntu > +# - CentOS, Debian, Fedora, FreeBSD, OpenSUSE, Ubuntu > # > # Valid OS versions are: > -# - CentOS7, Debian9, FedoraRawhide, Ubuntu18 and so on > +# - CentOS7, Debian9, FedoraRawhide, OpenSUSE15, Ubuntu18 and so on > # > # The arch specific rules use a prefix "$ARCH-" where $ARCH > # is a libvirt arch name. > @@ -70,6 +70,7 @@ mappings: > > apparmor: > deb: libapparmor-dev > + OpenSUSE: libapparmor-devel > cross-policy-deb: foreign > > augeas: > @@ -117,6 +118,7 @@ mappings: > cppi: > Fedora: cppi > FreeBSD: cppi > + OpenSUSE: cppi > > cyrus-sasl: > deb: libsasl2-dev > @@ -127,6 +129,7 @@ mappings: > dbus-daemon: > default: dbus > Fedora: dbus-daemon > + OpenSUSE: dbus-1 > > device-mapper: > deb: libdevmapper-dev > @@ -196,6 +199,7 @@ mappings: > deb: libglusterfs-dev > rpm: glusterfs-api-devel > Debian9: glusterfs-common > + OpenSUSE: glusterfs-devel > Ubuntu16: glusterfs-common > Ubuntu18: glusterfs-common > cross-policy-deb: foreign > @@ -204,6 +208,7 @@ mappings: > deb: libgnutls28-dev > pkg: gnutls > rpm: gnutls-devel > + OpenSUSE: libgnutls-devel > cross-policy-deb: foreign > > go: > @@ -228,6 +233,7 @@ mappings: > > gtk-update-icon-cache: > default: gtk-update-icon-cache > + OpenSUSE: gtk3-tools > Ubuntu16: libgtk2.0-bin > > gtk-vnc2: > @@ -248,14 +254,17 @@ mappings: > ip: > deb: iproute2 > rpm: iproute > + OpenSUSE: iproute2 > > iscsiadm: > deb: open-iscsi > rpm: iscsi-initiator-utils > + OpenSUSE: open-iscsi > > isoinfo: > default: genisoimage > FreeBSD: cdrkit > + OpenSUSE: mkisofs > > java: > deb: openjdk-11-jre-headless > @@ -289,6 +298,7 @@ mappings: > libaudit: > deb: libaudit-dev > rpm: audit-libs-devel > + OpenSUSE: audit-devel > cross-policy-deb: foreign > > libblkid: > @@ -320,6 +330,7 @@ mappings: > deb: libdbus-1-dev > pkg: dbus > rpm: dbus-devel > + OpenSUSE: dbus-1-devel > cross-policy-deb: foreign > > libgovirt: > @@ -347,6 +358,7 @@ mappings: > rpm: numactl-devel > armv6l-deb: > armv7l-deb: > + OpenSUSE: libnuma-devel > cross-policy-deb: foreign > > libparted: > @@ -370,6 +382,7 @@ mappings: > deb: librbd-dev > Fedora: librbd-devel > CentOS7: librbd1-devel > + OpenSUSE: librbd-devel > cross-policy-deb: foreign > > libselinux: > @@ -436,6 +449,7 @@ mappings: > deb: locales > Fedora: glibc-langpack-en > FreeBSD: > + OpenSUSE: glibc-locale > > lsof: > default: lsof > @@ -458,6 +472,7 @@ mappings: > ninja: > default: ninja-build > FreeBSD: ninja > + OpenSUSE: ninja > > mingw32-curl: > Fedora: mingw32-curl > @@ -639,6 +654,7 @@ mappings: > netcf: > deb: libnetcf-dev > rpm: netcf-devel > + OpenSUSE: > cross-policy-deb: skip > > net-tools: > @@ -678,6 +694,7 @@ mappings: > deb: perl > pkg: perl5 > rpm: perl-Archive-Tar > + OpenSUSE: perl-Archive-Tar-Wrapper > > perl-CPAN-Changes: > deb: libcpan-changes-perl > @@ -709,6 +726,7 @@ mappings: > deb: libio-compress-perl > pkg: p5-IO-Compress > rpm: perl-IO-Compress-Bzip2 > + OpenSUSE: perl-Compress-Bzip2 > > perl-IO-String: > deb: libio-string-perl > @@ -747,6 +765,7 @@ mappings: > deb: libtest-lwp-useragent-perl > pkg: p5-Test-LWP-UserAgent > Fedora: perl-Test-LWP-UserAgent > + OpenSUSE: perl-Test-LWP-UserAgent > > perl-Test-Pod: > deb: libtest-pod-perl > @@ -809,20 +828,24 @@ mappings: > deb: python-dev > pkg: python2 > rpm: python2-devel > + OpenSUSE: python-devel > cross-policy-deb: foreign > > python2-lxml: > default: python-lxml > Fedora: python2-lxml > FreeBSD: py27-lxml > + OpenSUSE: python2-lxml > > python2-nose: > default: python-nose > Fedora: python2-nose > FreeBSD: py27-nose > + OpenSUSE: python2-nose > > python2-setuptools: > CentOS7: python2-setuptools > + OpenSUSE: python2-setuptools > > python3: > default: python3 > @@ -831,6 +854,7 @@ mappings: > default: python3-dbus > FreeBSD: py36-dbus > CentOS7: python36-dbus > + OpenSUSE: python3-dbus-python > > python3-devel: > deb: python3-dev > @@ -838,17 +862,20 @@ mappings: > Fedora: python3-devel > CentOS7: python36-devel > cross-policy-deb: foreign > + OpenSUSE: python3-devel > > python3-gi: > deb: python3-gi > pkg: py36-gobject3 > rpm: python3-gobject > CentOS7: python36-gobject > + OpenSUSE: python3-gobject > > python3-libxml2: > default: python3-libxml2 > FreeBSD: py36-libxml2 > CentOS7: > + OpenSUSE: python3-libxml2-python > Ubuntu16: > > python3-lxml: > @@ -864,6 +891,7 @@ mappings: > python3-pip: > CentOS7: python3-pip > Debian9: python3-pip > + OpenSUSE: python3-pip > Ubuntu16: python3-pip > Ubuntu18: python3-pip > > @@ -884,6 +912,7 @@ mappings: > qemu-img: > default: qemu-utils > rpm: qemu-img > + OpenSUSE: qemu-tools > > radvd: > default: radvd > @@ -929,6 +958,7 @@ mappings: > deb: libspice-client-gtk-3.0-dev > pkg: spice-gtk > rpm: spice-gtk3-devel > + OpenSUSE: spice-gtk-devel > cross-policy-deb: foreign > > strace: > @@ -942,6 +972,7 @@ mappings: > deb: iproute2 > rpm: iproute-tc > CentOS7: iproute > + OpenSUSE: iproute2 > > unzip: > default: unzip > @@ -964,10 +995,12 @@ mappings: > wireshark: > deb: wireshark-dev > Fedora: wireshark-devel > + OpenSUSE: wireshark-devel > cross-policy-deb: skip > > xen: > Fedora: xen-devel > + OpenSUSE: xen-devel > x86_64-deb: libxen-dev > armv7l-deb: libxen-dev > aarch64-deb: libxen-dev > @@ -994,18 +1027,21 @@ mappings: > xz-static: > deb: liblzma-dev > Fedora: xz-static > + OpenSUSE: xz-static-devel > cross-policy-deb: foreign > > yajl: > deb: libyajl-dev > pkg: yajl > rpm: yajl-devel > + OpenSUSE: libyajl-devel > cross-policy-deb: foreign > > zfs: > default: zfs-fuse > CentOS: > FreeBSD: > + OpenSUSE: > > zlib: > deb: zlib1g-dev > @@ -1015,6 +1051,7 @@ mappings: > zlib-static: > deb: zlib1g-dev > rpm: zlib-static > + OpenSUSE: zlib-devel-static > cross-policy-deb: foreign > > > -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list