#844455 Use local packages for source build

#844455#5
Date:
2016-11-15 22:51:16 UTC
From:
To:
Dear Maintainer,

Occassionally I'm testing a new package version that has new
dependencies which aren't yet in Debian.  I can build the ITP'd
packages locally and build the new package version with e.g. sbuild's
- --extra-package arguments.  Although it's moderately inconvenient to
add a bunch of debs, it does work.

But I don't know that autopkgtest has a similar feature.  It would
need to build the new package with the extra debs and run the tests
after installing the extra debs.

- -- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.8.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages autopkgtest depends on:
ii  apt-utils       1.3.1
ii  libdpkg-perl    1.18.14
ii  procps          2:3.3.12-2
ii  python3         3.5.1-4
ii  python3-debian  0.1.29

Versions of packages autopkgtest recommends:
ii  autodep8  0.8

Versions of packages autopkgtest suggests:
pn  lxc          <none>
pn  lxd-client   <none>
pn  qemu-system  <none>
pn  qemu-utils   <none>
ii  schroot      1.6.10-2+b2

- -- no debconf information
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEhBcVftvnPZ6sHlObEm61Y6dLBr8FAlgrkWEACgkQEm61Y6dL
Br98Ig/9ELcitiz/bM+nvqFmPf4CCLXZ+Khg2tWFHCyQbZxPGkvPQ4kIc0AHpRxV
roKDSPzuaoc6nrF81vHTMpLcY5n7X+2SpQUSUaPbZ3Y4whvIxW0ixHdCCqCblOZ1
iyRaZr3EgDe53CXl2EA1uepMIYkhc7mDb9FH6QgW108RXRN48Alv7PEvKtCnWYi4
Dbb2BQG7S4T82itAkmBrPiAM2yhFLFKrvFDxRaNfNaLv72D75pPbcmqP4RiwGmMO
AvSeaAnjBMfmu6riJgidZc2A31rHrYy1gK6UkI7WDWJiJN6QF8ESzXix04npIHHN
kq+RhJ7RL/Y4WVzSvn1HU+dyZYQpJ/54K+m3bCgS91AaR4dcTFaWEux2RXtqWRos
6PjXap/Wv4r57cE5g97ZIpyoFiYs99o4hGS1UyGLxZGlKAf1zHBW6F2+9/SiRWry
Yc0s8x6GE8JLozE9+nHeSzy/OYBrIn0fPEJTYNAUCnjTzPwXZZe+Jzw8tCf6oTH4
jnpkCfTemCQDc1shIA7+DoX4hdJjh3Laf37FEV/2Lgn0KcDfuQOyS2fJS7GgTdgX
9euVNex6iI/CzSCe4re7sOJxZ5kSldUmFX9HyRAnwzXibo8JBYxhoHBCx85atIGI
5UZOMby7m2E5Rcs45Kc+C18HVQnnC8Nq7XYrR+9lKPBPwnwPg0s=
=kTUe
-----END PGP SIGNATURE-----

#844455#10
Date:
2016-11-16 07:43:27 UTC
From:
To:
Hello Barry,

Barry Warsaw [2016-11-15 17:51 -0500]:
Just specify any additional ones on the command line. There is no
limitation that the debs you specify actually come from the source you
specify. So with separate sbuild and that you can do this today.

As for building *in* autopkgtest with extra binaries, this doesn't
currently happen indeed; local binaries are only added as an apt
source for the test, but I think it would not hurt to supply them as
build dependencies too.

However, there is another difficulty: autopkgtest currently assumes
--no-built-binaries as soon as you specify any deb on the command
line, as that's usually what you want. For this corner case (build
given source package but use locally built build dependencies) it
would actually need to grow a --built-binaries flag again.

Martin

#844455#17
Date:
2016-11-16 15:16:20 UTC
From:
To:
Yes, that's exactly what I'm looking for.  Thanks!
#844455#22
Date:
2021-03-19 19:06:36 UTC
From:
To:
Howdy,

I ran into this issue a couple years ago, I made a quick and dirty edit (thanks
to this being in Python!) that solved the issue for me and I've carried ever
since.  It may not be the proper upstream fix, but if someone else runs into
this then it may be useful.


  autopkgtest_args.py |    3 ---
  1 file changed, 3 deletions(-)
--- /usr/share/autopkgtest/lib/autopkgtest_args.py 2018-04-22 09:55:27.000000000 -0400 +++ /usr/share/autopkgtest/lib/autopkgtest_args.py 2019-05-04 07:42:01.432510378 -0400 @@ -133,9 +133,6 @@ if not debsrc_action and not has_clicksrc and not has_click: parser.error('You must specify source or click package to test') - if has_debs or has_click: - args.built_binaries = False - if debsrc_action: # some actions above disable built binaries, for the rest use the CLI option if debsrc_action[2] is None: ~Unit 193 Unit193 @ freenode Unit193 @ OFTC