From Dan Kenigsberg danken@redhat.com:
Dan Kenigsberg has uploaded a new change for review.
Change subject: spec: split network and common code to subrpms ......................................................................
spec: split network and common code to subrpms
The code of the network subsystem still depends on the rest of vdsm. Despite that, this patch introduces the vdsm-network and vdsm-common subrpms as a little step to declare file ownership on an installed host.
Please note that at least the following dependencies remain: * vdsm.network.api and vdsm.network.configurators.ifcfg depnend on vdsm.hooks, which in turn depends on execCmd * vdsm.network.link.sriov depends on vdsm.udevadm * vdsm.netswitch.configurators depends on vdsm.tool.service * vdsm.network.initilizer.init_unprivileged_network_components still depends on vdsm.supervdsm * vdsm.network.restore_net_config depends on vdsm.hostdev
Change-Id: I11b663ff23023661017c6045a20925ca6abac69d Signed-off-by: Dan Kenigsberg danken@redhat.com --- M contrib/shell_helper M vdsm.spec.in 2 files changed, 84 insertions(+), 60 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/82/80982/1
diff --git a/contrib/shell_helper b/contrib/shell_helper index 8e782d5..93fbe49 100755 --- a/contrib/shell_helper +++ b/contrib/shell_helper @@ -11,7 +11,7 @@
_latest_rpms() { local VERSION=$(_latest_version) - find "$RPMDIR"/ -iname "*$VERSION*.rpm" | egrep "vdsm-[0-9]|python|client|http|jsonrpc|tests|api|hook-vmfex-dev" + find "$RPMDIR"/ -iname "*$VERSION*.rpm" | egrep "vdsm-[0-9]|python|client|http|jsonrpc|tests|api|hook-vmfex-dev|common|network" }
vdsm_configure_force() { diff --git a/vdsm.spec.in b/vdsm.spec.in index 5ffcd65..96d3c54 100644 --- a/vdsm.spec.in +++ b/vdsm.spec.in @@ -124,6 +124,7 @@ Requires: safelease >= 1.0-7 Requires: mom >= 0.5.8 Requires(pre): shadow-utils +Requires(preun): %{name}-network
Obsoletes: %{name}-infra < 4.19
@@ -301,6 +302,8 @@ BuildArch: noarch Requires: python-cpopen >= 1.5 Requires: python-ioprocess >= 0.16.1-1 +Requires: %{name}-common = %{version}-%{release} +Requires: %{name}-network = %{version}-%{release}
%description python Shared libraries between the various VDSM packages. @@ -317,6 +320,22 @@ rm -f %{python2_sitearch}/%{vdsm_name}/__init__.py* fi fi + +%package common +Summary: common VDSM python libraries, required by all subsystems +BuildArch: noarch + +%description common +VDSM libraries that are imported by all subsystems + +%package network +Summary: VDSM network libraries +BuildArch: noarch +Requires: %{name}-common = %{version}-%{release} +Requires: %{name} = %{version}-%{release} + +%description network +VDSM network libraries
%package tests Summary: VDSM Test Suite @@ -871,8 +890,6 @@ %dir %{_libexecdir}/%{vdsm_name} %dir %{_sysconfdir}/%{vdsm_name}/vdsm.conf.d %dir %{_sysconfdir}/modprobe.d/ -%dir %{_sysconfdir}/NetworkManager -%dir %{_sysconfdir}/NetworkManager/conf.d %dir %{_sysconfdir}/%{vdsm_name} %dir %{_sysconfdir}/%{vdsm_name}/mom.d %dir %{_datadir}/%{vdsm_name} @@ -892,7 +909,6 @@ %{_tmpfilesdir}/%{vdsm_name}.conf %{_sysconfdir}/dhcp/dhclient.d/dhclientmon.sh %{_sysconfdir}/modprobe.d/vdsm-bonding-modprobe.conf -%{_sysconfdir}/NetworkManager/conf.d/vdsm.conf %{_sysconfdir}/sudoers.d/50_vdsm %{_sysconfdir}/cron.hourly/vdsm-logrotate %{_sysconfdir}/libvirt/hooks/qemu @@ -1008,14 +1024,10 @@ %{_datadir}/%{vdsm_name}/autounattend/Win2012R2.xml %{_datadir}/%{vdsm_name}/autounattend/Win2016.xml
-%files python -%{_mandir}/man1/vdsm-tool.1* -%{_bindir}/vdsm-tool -%dir %{python_sitelib}/%{vdsm_name} -%dir %{python_sitelib}/%{vdsm_name}/common -%dir %{python_sitelib}/%{vdsm_name}/common/network -%dir %{python_sitelib}/%{vdsm_name}/gluster -%dir %{python_sitelib}/%{vdsm_name}/host +%files network +%dir %{_sysconfdir}/NetworkManager +%dir %{_sysconfdir}/NetworkManager/conf.d +%{_sysconfdir}/NetworkManager/conf.d/vdsm.conf %dir %{python_sitelib}/%{vdsm_name}/network %dir %{python_sitelib}/%{vdsm_name}/network/configurators %dir %{python_sitelib}/%{vdsm_name}/network/ip @@ -1034,52 +1046,8 @@ %dir %{python_sitelib}/%{vdsm_name}/network/ovs %dir %{python_sitelib}/%{vdsm_name}/network/ovs/driver %dir %{python_sitelib}/%{vdsm_name}/network/tc -%dir %{python_sitelib}/%{vdsm_name}/metrics -%dir %{python_sitelib}/%{vdsm_name}/tool -%dir %{python_sitelib}/%{vdsm_name}/tool/configurators -%dir %{python_sitelib}/%{vdsm_name}/profiling -%dir %{python_sitelib}/%{vdsm_name}/storage -%dir %{python_sitelib}/%{vdsm_name}/supervdsm_api -%dir %{python_sitelib}/%{vdsm_name}/virt -%dir %{python_sitelib}/%{vdsm_name}/virt/vmdevices -%{python_sitelib}/%{vdsm_name}/__init__.py* -%{python_sitelib}/%{vdsm_name}/alignmentScan.py* -%{python_sitelib}/%{vdsm_name}/API.py* -%{python_sitelib}/%{vdsm_name}/client.py* -%{python_sitelib}/%{vdsm_name}/clientIF.py* -%{python_sitelib}/%{vdsm_name}/cmdutils.py* -%{python_sitelib}/%{vdsm_name}/commands.py* -%{python_sitelib}/%{vdsm_name}/common/*.py* -%{python_sitelib}/%{vdsm_name}/hook/*.py* -%{python_sitelib}/%{vdsm_name}/host/*.py* -%{python_sitelib}/%{vdsm_name}/common/network/*.py* -%{python_sitelib}/%{vdsm_name}/config.py* -%{python_sitelib}/%{vdsm_name}/constants.py* -%{python_sitelib}/%{vdsm_name}/containersconnection.py* -%{python_sitelib}/%{vdsm_name}/cpuarch.py* -%{python_sitelib}/%{vdsm_name}/cpuinfo.py* -%{python_sitelib}/%{vdsm_name}/dmidecodeUtil.py* -%{python_sitelib}/%{vdsm_name}/executor.py* -# gluster.exception is used in many places like Bridge.py. So it is required -# even without vdsm-gluster package -%{python_sitelib}/%{vdsm_name}/gluster/__init__.py* -%{python_sitelib}/%{vdsm_name}/gluster/cli.py* -%{python_sitelib}/%{vdsm_name}/gluster/exception.py* -%{python_sitelib}/%{vdsm_name}/health.py* -%{python_sitelib}/%{vdsm_name}/hooks.py* -%{python_sitelib}/%{vdsm_name}/hostdev.py* -%{python_sitelib}/%{vdsm_name}/hugepages.py* -%{python_sitelib}/%{vdsm_name}/jobs.py* -%{python_sitelib}/%{vdsm_name}/jsonrpcvdscli.py* -%{python_sitelib}/%{vdsm_name}/kvm2ovirt.py* -%{python_sitelib}/%{vdsm_name}/libvirtconnection.py* -%{python_sitelib}/%{vdsm_name}/logUtils.py* -%{python_sitelib}/%{vdsm_name}/machinetype.py* -%{python_sitelib}/%{vdsm_name}/metrics/*.py* -%{python_sitelib}/%{vdsm_name}/moduleloader.py* -%{python_sitelib}/%{vdsm_name}/momIF.py* -%{python_sitelib}/%{vdsm_name}/mkimage.py* -%{python_sitelib}/%{vdsm_name}/network/*.py* +%{python_sitelib}/%{vdsm_name}/network/__init__.py* +%{python_sitelib}/%{vdsm_name}/network/api.py* %{python_sitelib}/%{vdsm_name}/network/configurators/__init__.py* %{python_sitelib}/%{vdsm_name}/network/configurators/ifcfg.py* %{python_sitelib}/%{vdsm_name}/network/configurators/ifcfg_acquire.py* @@ -1115,6 +1083,64 @@ %{python_sitelib}/%{vdsm_name}/network/tc/cls.py* %{python_sitelib}/%{vdsm_name}/network/tc/filter.py* %{python_sitelib}/%{vdsm_name}/network/tc/qdisc.py* +%{python_sitelib}/%{vdsm_name}/supervdsm_api/network.py* +%{python_sitelib}/%{vdsm_name}/tool/network.py* + +%files common +%dir %{python_sitelib}/%{vdsm_name}/common +%dir %{python_sitelib}/%{vdsm_name}/common/network +%{python_sitelib}/%{vdsm_name}/__init__.py* +%{python_sitelib}/%{vdsm_name}/common/*.py* +%{python_sitelib}/%{vdsm_name}/common/network/*.py* + +%files python +%{_mandir}/man1/vdsm-tool.1* +%{_bindir}/vdsm-tool +%dir %{python_sitelib}/%{vdsm_name} +%dir %{python_sitelib}/%{vdsm_name}/gluster +%dir %{python_sitelib}/%{vdsm_name}/hook +%dir %{python_sitelib}/%{vdsm_name}/host +%dir %{python_sitelib}/%{vdsm_name}/metrics +%dir %{python_sitelib}/%{vdsm_name}/tool +%dir %{python_sitelib}/%{vdsm_name}/tool/configurators +%dir %{python_sitelib}/%{vdsm_name}/profiling +%dir %{python_sitelib}/%{vdsm_name}/storage +%dir %{python_sitelib}/%{vdsm_name}/supervdsm_api +%dir %{python_sitelib}/%{vdsm_name}/virt +%dir %{python_sitelib}/%{vdsm_name}/virt/vmdevices +%{python_sitelib}/%{vdsm_name}/API.py* +%{python_sitelib}/%{vdsm_name}/alignmentScan.py* +%{python_sitelib}/%{vdsm_name}/client.py* +%{python_sitelib}/%{vdsm_name}/clientIF.py* +%{python_sitelib}/%{vdsm_name}/cmdutils.py* +%{python_sitelib}/%{vdsm_name}/commands.py* +%{python_sitelib}/%{vdsm_name}/hook/*.py* +%{python_sitelib}/%{vdsm_name}/host/*.py* +%{python_sitelib}/%{vdsm_name}/config.py* +%{python_sitelib}/%{vdsm_name}/constants.py* +%{python_sitelib}/%{vdsm_name}/containersconnection.py* +%{python_sitelib}/%{vdsm_name}/cpuarch.py* +%{python_sitelib}/%{vdsm_name}/cpuinfo.py* +%{python_sitelib}/%{vdsm_name}/dmidecodeUtil.py* +%{python_sitelib}/%{vdsm_name}/executor.py* +# gluster.exception is used in many places like Bridge.py. So it is required +# even without vdsm-gluster package +%{python_sitelib}/%{vdsm_name}/gluster/__init__.py* +%{python_sitelib}/%{vdsm_name}/gluster/cli.py* +%{python_sitelib}/%{vdsm_name}/gluster/exception.py* +%{python_sitelib}/%{vdsm_name}/health.py* +%{python_sitelib}/%{vdsm_name}/hostdev.py* +%{python_sitelib}/%{vdsm_name}/hugepages.py* +%{python_sitelib}/%{vdsm_name}/jobs.py* +%{python_sitelib}/%{vdsm_name}/jsonrpcvdscli.py* +%{python_sitelib}/%{vdsm_name}/kvm2ovirt.py* +%{python_sitelib}/%{vdsm_name}/libvirtconnection.py* +%{python_sitelib}/%{vdsm_name}/logUtils.py* +%{python_sitelib}/%{vdsm_name}/machinetype.py* +%{python_sitelib}/%{vdsm_name}/metrics/*.py* +%{python_sitelib}/%{vdsm_name}/moduleloader.py* +%{python_sitelib}/%{vdsm_name}/momIF.py* +%{python_sitelib}/%{vdsm_name}/mkimage.py* %{python_sitelib}/%{vdsm_name}/numa.py* %{python_sitelib}/%{vdsm_name}/osinfo.py* %{python_sitelib}/%{vdsm_name}/panic.py* @@ -1207,7 +1233,6 @@ %{python_sitelib}/%{vdsm_name}/supervdsm_api/hwinfo.py* %{python_sitelib}/%{vdsm_name}/supervdsm_api/mkimage.py* %{python_sitelib}/%{vdsm_name}/supervdsm_api/ksm.py* -%{python_sitelib}/%{vdsm_name}/supervdsm_api/network.py* %{python_sitelib}/%{vdsm_name}/supervdsm_api/systemd.py* %{python_sitelib}/%{vdsm_name}/supervdsm_api/test.py* %{python_sitelib}/%{vdsm_name}/supervdsm_api/udev.py* @@ -1243,7 +1268,6 @@ %{python_sitelib}/%{vdsm_name}/tool/configurators/multipath.py* %{python_sitelib}/%{vdsm_name}/tool/configurators/bond_defaults.py* %{python_sitelib}/%{vdsm_name}/tool/dump_volume_chains.py* -%{python_sitelib}/%{vdsm_name}/tool/network.py* %{python_sitelib}/%{vdsm_name}/tool/register.py* %{python_sitelib}/%{vdsm_name}/tool/service.py* %{python_sitelib}/%{vdsm_name}/tool/transient.py*
From Dan Kenigsberg danken@redhat.com:
Dan Kenigsberg has posted comments on this change.
Change subject: spec: split network and common code to subrpms ......................................................................
Patch Set 2:
ci please build
From Dan Kenigsberg danken@redhat.com:
Dan Kenigsberg has posted comments on this change.
Change subject: spec: split network and common code to subrpms ......................................................................
Patch Set 2:
ost http://jenkins.ovirt.org/job/ovirt-system-tests_manual/1013/
From Dan Kenigsberg danken@redhat.com:
Dan Kenigsberg has posted comments on this change.
Change subject: spec: split network and common code to subrpms ......................................................................
Patch Set 2: Verified+1
http://jenkins.ovirt.org/job/ovirt-system-tests_manual/1013/ passed
vdsm-patches@lists.fedorahosted.org