ros-infrastructure / bloom

A release automation tool which makes releasing catkin (http://ros.org/wiki/catkin) packages easier.
Other
58 stars 95 forks source link

Local prerelease fails on third party release with patches #328

Open mikepurvis opened 9 years ago

mikepurvis commented 9 years ago

Following the instructions here: http://wiki.ros.org/bloom/Tutorials/PrereleaseTest#Perform_the_pre-release_locally

Building from a tag, as instructed in the tutorial:

$ git clone -b debian/ros-indigo-swiftnav_0.13.0-1_trusty https://github.com/clearpath-gbp/libswiftnav-release libswiftnav
$ cd libswiftnav
$ git-buildpackage -uc -us  --git-ignore-new --git-upstream-tree=tag
gbp:error: Currently not on a branch

Building from the branch, which would work but for the repo having been patched away from the upstream tag:

$ git clone -b debian/indigo/trusty/swiftnav https://github.com/clearpath-gbp/libswiftnav-release libswiftnav
$ cd libswiftnav
$ git-buildpackage -uc -us  --git-ignore-new --git-upstream-tree=tag
gbp:info: ros-indigo-swiftnav_0.13.0.orig.tar.gz does not exist, creating from 'upstream/0.13.0'
...
dpkg-source: info: building ros-indigo-swiftnav using existing ./ros-indigo-swiftnav_0.13.0.orig.tar.gz
dpkg-source: info: local changes detected, the modified files are:
 libswiftnav/CMakeLists.txt
dpkg-source: error: aborting due to unexpected upstream changes, see /tmp/ros-indigo-swiftnav_0.13.0-1trusty.diff.uuPkaY
dpkg-source: info: you can integrate the local changes with dpkg-source --commit
dpkg-buildpackage: error: dpkg-source -i -I -b libswiftnav gave error exit status 2
debuild: fatal error at line 1364:
dpkg-buildpackage -rfakeroot -D -us -uc -i -I failed
gbp:error: Couldn't run 'debuild -i -I -uc -us': debuild -i -I returned 29
tfoote commented 9 years ago

Unfortunately things noteably changed between precise and trusty you basically need this logic for building on trusty:

https://github.com/ros-infrastructure/ros_buildfarm/blob/master/ros_buildfarm/sourcedeb_job.py#L69-L99

mikepurvis commented 9 years ago

Yes, I assumed it was related to that; I just don't feel qualified to update the bloom tutorials, hence this ticket.

wjwwood commented 9 years ago

@mikepurvis can you try adding --git-ignore-branch to your first invocation?

wjwwood commented 9 years ago

If that works for you then I'll update the wiki page to reflect that for Trusty.

mikepurvis commented 9 years ago

Same error as the second invocation:

$ git-buildpackage -uc -us  --git-ignore-new --git-upstream-tree=tag --git-ignore-branch
 dpkg-buildpackage -rfakeroot -D -us -uc -i -I
dpkg-buildpackage: source package ros-indigo-swiftnav
dpkg-buildpackage: source version 0.13.0-1trusty
dpkg-buildpackage: source distribution trusty
dpkg-buildpackage: source changed by Mike Purvis <mpurvis@clearpathrobotics.com>
 dpkg-source -i -I --before-build libswiftnav
dpkg-buildpackage: host architecture amd64
 fakeroot debian/rules clean
dh  clean
   dh_testdir
Unknown option: buildsystem
dh_testdir: warning: ignored unknown options in DH_OPTIONS
   dh_auto_clean
   dh_clean
Unknown option: buildsystem
dh_clean: warning: ignored unknown options in DH_OPTIONS
    rm -f debian/ros-indigo-swiftnav.substvars
    rm -f debian/ros-indigo-swiftnav.*.debhelper
    rm -rf debian/ros-indigo-swiftnav/
    rm -f debian/*.debhelper.log
    rm -f debian/files
    find .  \( \( -type f -a \
            \( -name '#*#' -o -name '.*~' -o -name '*~' -o -name DEADJOE \
         -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \
         -o -name '.*.orig' -o -name .*.rej -o -name '.SUMS' \
         -o -name TAGS -o \( -path '*/.deps/*' -a -name '*.P' \) \
        \) -exec rm -f {} + \) -o \
        \( -type d -a -name autom4te.cache -prune -exec rm -rf {} + \) \)
    rm -f *-stamp
 dpkg-source -i -I -b libswiftnav
dpkg-source: info: using source format `3.0 (quilt)'
dpkg-source: info: building ros-indigo-swiftnav using existing ./ros-indigo-swiftnav_0.13.0.orig.tar.gz
dpkg-source: info: local changes detected, the modified files are:
 libswiftnav/CMakeLists.txt
dpkg-source: error: aborting due to unexpected upstream changes, see /tmp/ros-indigo-swiftnav_0.13.0-1trusty.diff.rPQnYy
dpkg-source: info: you can integrate the local changes with dpkg-source --commit
dpkg-buildpackage: error: dpkg-source -i -I -b libswiftnav gave error exit status 2
debuild: fatal error at line 1364:
dpkg-buildpackage -rfakeroot -D -us -uc -i -I failed
gbp:error: Couldn't run 'debuild -i -I -uc -us': debuild -i -I returned 29
wjwwood commented 9 years ago

Thanks for trying it out, can you gist this file? /tmp/ros-indigo-swiftnav_0.13.0-1trusty.diff.rPQnYy

mikepurvis commented 9 years ago

It's just a diff of the changes being patched in by bloom: https://gist.github.com/1d452749908b8ff9b1b1

wjwwood commented 9 years ago

@tfoote Are you sure the code at https://github.com/ros-infrastructure/ros_buildfarm/blob/master/ros_buildfarm/sourcedeb_job.py#L69-L99 is getting executed for the source deb job on the farm, looking at the swiftnav job the phrase Invoking ' never shows up in the output... Maybe there is something wrong with the logging on Jenkins, I don't know, either way it's pretty difficult to know what the farm is doing in this case.