Closed laeti-tia closed 6 months ago
Done.
I'm trying out this change and have the following error using the latest Unibuild images (as per last comment), also seen in the latest Jenkins builds:
Build Package pscheduler-account 5.1.0~a1.0~20240219131141
# Note that we ignore unibuild-packaging differences here because that
# directory it will have been deleted from the .orig tarball.
(((( \
cd unibuild-work/build/pscheduler-account && dpkg-buildpackage -sa \
'--diff-ignore=^unibuild-packaging/.*$' \
--root-command=fakeroot --no-sign 2>&1 ; \
echo $? >&3 \
) \
| tee unibuild-log >&4) 3>&1) \
| (read XS; exit $XS) \
) 4>&1
dpkg-buildpackage: info: source package pscheduler-account
dpkg-buildpackage: info: source version 5.1.0~a1.0~20240219131141-1
dpkg-buildpackage: info: source distribution UNRELEASED
dpkg-buildpackage: info: source changed by perfSONAR developers <debian@perfsonar.net>
dpkg-source --diff-ignore=^unibuild-packaging/.*$ --before-build .
dpkg-buildpackage: info: host architecture amd64
fakeroot debian/rules clean
make[1]: Entering directory '/Users/laeti/Jobs/GÉANT/Code/github/pscheduler/pscheduler-account/unibuild-work/build/pscheduler-account'
dh clean
dh_clean
make[1]: Leaving directory '/Users/laeti/Jobs/GÉANT/Code/github/pscheduler/pscheduler-account/unibuild-work/build/pscheduler-account'
dpkg-source --diff-ignore=^unibuild-packaging/.*$ -b .
dpkg-source: info: using source format '3.0 (quilt)'
dpkg-source: info: building pscheduler-account using existing ./pscheduler-account_5.1.0~a1.0~20240219131141.orig.tar.gz
dpkg-source: warning: executable mode 0755 of 'unibuild-work/build/pscheduler-account/unibuild-packaging/deb/rules' will not be represented in diff
dpkg-source: warning: executable mode 0755 of 'unibuild-work/build/pscheduler-account/unibuild-packaging/deb/tests/user' will not be represented in diff
dpkg-source: info: local changes detected, the modified files are:
pscheduler-account/unibuild-work/build/pscheduler-account/unibuild-packaging/deb/changelog
pscheduler-account/unibuild-work/build/pscheduler-account/unibuild-packaging/deb/compat
pscheduler-account/unibuild-work/build/pscheduler-account/unibuild-packaging/deb/gbp.conf
pscheduler-account/unibuild-work/build/pscheduler-account/unibuild-packaging/deb/rules
pscheduler-account/unibuild-work/build/pscheduler-account/unibuild-packaging/deb/source/format
pscheduler-account/unibuild-work/build/pscheduler-account/unibuild-packaging/deb/tests/control
pscheduler-account/unibuild-work/build/pscheduler-account/unibuild-packaging/deb/tests/user
dpkg-source: error: aborting due to unexpected upstream changes, see /tmp/pscheduler-account_5.1.0~a1.0~20240219131141-1.diff.2eqoHk
dpkg-source: info: you can integrate the local changes with dpkg-source --commit
dpkg-buildpackage: error: dpkg-source --diff-ignore=^unibuild-packaging/.*$ -b . subprocess returned exit status 2
make: *** [unibuild/unibuild-deb.make:218: build] Error 2
make: Leaving directory '/Users/laeti/Jobs/GÉANT/Code/github/pscheduler/pscheduler-account'
This seems to be happening only with pscheduler-account
, pscheduler-server
, pscheduler-core
and pscheduler-test-throughput
are fine for example.
These last comments of mine were a pscheduler packaging issue, not a Unibuild one. Can be closed.
A change in the
unibuild-packaging
directory, for example correcting a Debian packaging file or even an RPM spec file, will create a new orig tarball (with a different checksum). This makes automatically releasing a new Debian package from the same source impossible. For example, the orig tarball for 5.0.8-1 and 5.0.8-2 should be the same, as such a new package release must contain the same source code. As per Debian packaging guidelines, the orig tarball should only contain the software's source code, not its packaging specifications.