On Thu, Jun 28, 2018 at 1:16 PM Nir Soffer <nsoffer@redhat.com> wrote:
On Thu, Jun 28, 2018 at 12:52 PM Nir Soffer <nsoffer@redhat.com> wrote:
Trying to update vdsm master, my update script fail with:

installing...
error: Failed dependencies:
vdsm = 4.30.0-429.git05bfb8731.fc28 is needed by (installed) vdsm-hook-fcoe-4.30.0-429.git05bfb8731.fc28.noarch
vdsm = 4.30.0-429.git05bfb8731.fc28 is needed by (installed) vdsm-hook-ethtool-options-4.30.0-429.git05bfb8731.fc28.noarch

I tried to remove these hooks, since I'm not interested in any of them, but
removing them try to remove 136 packages including libvirt.

Why do we have these dependencies? hook should be optional.

Who owns these hooks?

Strangely, the fcoe hook is not built by "make rpm":

$ ls -1 noarch/
vdsm-api-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-client-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-common-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-hook-cpuflags-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-hook-ethtool-options-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-hook-faqemu-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-hook-ipv6-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-hook-localdisk-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-hook-macspoof-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-hook-openstacknet-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-hook-qemucmdline-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-hook-vfio-mdev-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-hook-vmfex-dev-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-http-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-jsonrpc-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-python-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-tests-4.30.0-435.git1fe2027bd.fc28.noarch.rpm
vdsm-yajsonrpc-4.30.0-435.git1fe2027bd.fc28.noarch.rpm

$ cat contrib/koji_build.sh 
echo 'Please run this script from vdsm main folder'
echo '============================================'

make distclean
./autogen.sh \
    --system \
    --disable-ovirt-imageio \
    --disable-ovirt-vmconsole \
    --enable-vhostmd \
    --enable-hooks \
    --enable-containers \
    --with-data-center='/run/vdsm/data-center'
make srpm

echo
echo 'Finish to compile VDSM for koji Fedora build'
echo 'Use output srp.rpm to import fedpkg'

Should be build for fedora using --enable-hooks?

Answering - --enable-hooks is required on Fedora.

In summary this is how to build vdsm for Fedora 28:

git clean -dxf
./autogen.sh --system --enable-hooks
make
make rpm

Nir