Page MenuHomeVyOS Platform

missing source packages, git submodule init
Closed, WontfixPublicBUG

Description

Trying to rebuild all the vyos packages from source.

branch=current
git clone https://github.com/vyos/vyos-build.git
cd vyos-build
git checkout $branch
./configure
git submodule init
git submodule update
for i in packages/*; do
     if [ -f "$i/.git" ]; then
         p=$(basename "$i")
         echo  "select branch $branch for package $p"
         pushd "$i"
             git checkout $branch
             if [ $? -eq 1 ]; then
                 git checkout master
             fi
         popd
     fi
done

After building everything in packages, and 'make iso', the final iso contains vyos packages that are not in the packages directory. It seems that 'git submodule init' does not fetch all of them? The missing ones are:

conntrack
conntrack-helpers
conntrackd
ddclient
eventwatchd
hvinfo
igmpproxy
iproute
iproute2
libsnmp-base
libsnmp-perl
libsnmp30:amd64
nfct
open-vm-tools
pmacct
snmp
snmpd
vyatta-biosdevname
vyatta-quagga
vyos-opennhrp

Also, the submodule init does find vyatta-cron, but that needs to be removed since it conflicts with something else, and it is not in the official vyos nightly builds.

Details

Difficulty level
Unknown (require assessment)
Version
branch=current
Why the issue appeared?
Will be filled on close
Is it a breaking change?
Unspecified (possibly destroys the router)
Issue type
Internal change (not visible to end users)

Event Timeline

syncer triaged this task as Low priority.

I was not able to create a patch for vyos-build since I am missing something in my understanding of submodules. There should be some way to generate a git patch that adds submodules. But this works:

git clone https://github.com/vyos/vyos-build.git
cd vyos-build
git checkout $branch
git submodule add https://github.com/vyos/conntrack-tools packages/conntrack-tools
git submodule add https://github.com/vyos/ddclient packages/ddclient
git submodule add https://github.com/vyos/eventwatchd packages/eventwatchd
git submodule add https://github.com/vyos/hvinfo packages/hvinfo
git submodule add https://github.com/vyos/igmpproxy packages/igmpproxy
git submodule add https://github.com/vyos/vyatta-iproute packages/vyatta-iproute
git submodule add https://github.com/vyos/net-snmp packages/net-snmp
git submodule add https://github.com/vyos/vyos-open-vm-tools packages/vyos-open-vm-tools
git submodule add https://github.com/vyos/pmacct packages/pmacct
git submodule add https://github.com/vyos/vyatta-biosdevname packages/vyatta-biosdevname
git submodule add https://github.com/vyos/vyatta-quagga packages/vyatta-quagga
git submodule add https://github.com/vyos/vyos-opennhrp packages/vyos-opennhrp
./configure

@carl.byington thank you for the investigation. I'll check if it produces a reasonable ISO and will perform a pull request.

@carl.byington I added a branch on my Github fork: https://github.com/c-po/vyos-build/commit/65f1b3d77d2ac1022004dcc6095db5683e0ff917 this has all the submodules you mentioned.

This actually resulted in unmet dependencies:
dpkg-checkbuilddeps: Unmet build dependencies: libmnl-dev (>= 1.0.1) libnetfilter-conntrack-dev (>= 1.0.1) libnetfilter-cthelper0-dev libnetfilter-cttimeout-dev (>= 1.0.0) libnetfilter-queue-dev (>= 1.0.2) libnfnetlink-dev (>= 1.0.1)

Maybe you can give it a shot. I'm happy to assist you in getting the build process up and running!

syncer changed the task status from Open to On hold.Oct 13 2018, 6:51 PM
syncer added a subscriber: syncer.

requires testing

We no longer make use of git submodules. Closing as wontfix. Build from source is possible using e.g. our Jenkins CI/CD pipeline library (https://github.com/vyos/vyos-build/tree/current/vars)

c-po set Is it a breaking change? to Unspecified (possibly destroys the router).
dmbaturin set Issue type to Internal change (not visible to end users).