[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Use SBuild to run post-build tools (autopkgtest, piuparts, …) in build area



Howdy all,

How do I specify the build area (‘sbuild(1)’ manual says use the
‘--build-dir’ option), and have the correct paths generated for the
post-build tools?

When I invoke an SBuild run:

    sudo sbuild --build-dir=../build-area/ --dist unstable --source --arch-all --run-lintian --run-piuparts --run-autopkgtest ../build-area/foo_3.4.5-2.dsc

The package builds correctly. But when the same SBuild run then invokes
Lintian, PIUParts, and AutoPkgTest, only Lintian receives the correct
path for files.

The post-build commands fail with an error indicating they could not
find the specified file.

=====
$ sudo sbuild --build-dir=../build-area/ --dist unstable --source --arch-all --run-lintian --run-piuparts --run-autopkgtest ../build-area/foo_3.4.5-2.dsc
sbuild (Debian sbuild) 0.78.0 (09 January 2019) on jasmine
[…]
Build finished at 2019-01-23T00:08:13Z

Finished
--------

I: Built successfully

+------------------------------------------------------------------------------+
| Changes                                                                      |
+------------------------------------------------------------------------------+
[… success …]

+------------------------------------------------------------------------------+
| Buildinfo                                                                    |
+------------------------------------------------------------------------------+
[… success …]

lintian
-------

I: Lintian run was successful.

+------------------------------------------------------------------------------+
| Post Build                                                                   |
+------------------------------------------------------------------------------+

piuparts
--------

0m0.0s INFO: ------------------------------------------------------------------------------
0m0.0s INFO: To quickly glance what went wrong, scroll down to the bottom of this logfile.
0m0.0s INFO: FAQ available at https://wiki.debian.org/piuparts/FAQ
0m0.0s INFO: The FAQ also explains how to contact us in case you think piuparts is wrong.
0m0.0s INFO: ------------------------------------------------------------------------------
0m0.0s INFO: piuparts version 0.96 starting up.
0m0.0s INFO: Command line arguments: /usr/sbin/piuparts ../build-area//foo_3.4.5-2_amd64.changes
0m0.0s INFO: Running on: Linux jasmine 4.19.0-1-amd64 #1 SMP Debian 4.19.12-1 (2018-12-22) x86_64
0m0.0s WARNING: /build-area/foo_3.4.5-2_amd64.changes is not readable. Skipping.
[…]
0m0.0s ERROR: piuparts run ends.

E: Piuparts run failed.

autopkgtest
-----------

usage: autopkgtest [options] [testbinary ...] testsrc -- virt-server [options]
autopkgtest: error: ../build-area//foo_3.4.5-2_amd64.changes is invalid and does not contain Files:

E: Autopkgtest run failed.
[…]
=====

How can I use the ‘--build-dir’ option as intended, *and* have SBuild
tell the post-build tools the correct paths to the files it generated in
the build area?

-- 
 \     “Do unto others twenty-five percent better than you expect them |
  `\      to do unto you. (The twenty-five percent is [to correct] for |
_o__)                            error.)” —Linus Pauling's Golden Rule |
Ben Finney


Reply to: