Message ID | 20231114173900.269290-1-cedric.hombourger@siemens.com |
---|---|
State | Superseded, archived |
Headers | show |
Series | dpkg: make sbuild timeout configurable | expand |
On Tue, 2023-11-14 at 18:39 +0100, 'Cedric Hombourger' via isar-users wrote: > Some builds (especially those under qemu) can take a very long time > and fail only because they did not complete within 2.5 hours. Let > recipes budget some more time by setting DPKG_BUILD_TIMEOUT to a > larger value (defaults to 150 minutes like sbuild). > > Signed-off-by: Cedric Hombourger <cedric.hombourger@siemens.com> > --- > meta/classes/dpkg.bbclass | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/meta/classes/dpkg.bbclass b/meta/classes/dpkg.bbclass > index d61e9377..4accb076 100644 > --- a/meta/classes/dpkg.bbclass > +++ b/meta/classes/dpkg.bbclass > @@ -4,6 +4,11 @@ > inherit dpkg-base > inherit dpkg-source > > +# maximum time (in minutes for the build), override for packages > requiring > +# much more time (e.g. when cross-compiling isn't an option / > supported and > +# the package large) > +DPKG_BUILD_TIMEOUT ?= "150" > + > DPKG_PREBUILD_ENV_FILE="${WORKDIR}/dpkg_prebuild.env" > > # bitbake variables that should be passed into sbuild env > @@ -94,6 +99,7 @@ dpkg_runbuild() { > ${@ expand_sbuild_pt_additions(d)} > > echo '$apt_keep_downloaded_packages = 1;' >> ${SBUILD_CONFIG} > + echo '$stalled_pkg_timeout = ${DPKG_BUILD_TIMEOUT};' >> Hi Cedric, please add this variable to the dpkg_runbuild[vardepsexclude] as well. Also I'm wondering if we should document this variable in the docs. Felix > ${SBUILD_CONFIG} > > DEB_SOURCE_NAME=$(dpkg-parsechangelog --show-field Source --file > ${WORKDIR}/${PPS}/debian/changelog) > DSC_FILE=$(find ${WORKDIR} -name "${DEB_SOURCE_NAME}*.dsc" - > maxdepth 1 -print) > -- > 2.39.2 >
On Wed, 2023-11-15 at 09:41 +0100, 'Cedric Hombourger' via isar-users wrote: > Some builds (especially those under qemu) can take a very long time > and fail only because they did not complete within 2.5 hours. Let > recipes budget some more time by setting DPKG_BUILD_TIMEOUT to a > larger value (defaults to 150 minutes like sbuild). > > Signed-off-by: Cedric Hombourger <cedric.hombourger@siemens.com> > > Changes since v1: > - add DPKG_BUILD_TIMEOUT to the user manual > - add DPKG_BUILD_TIMEOUT to vardepsexclude for dpkg_runbuild > > Cedric Hombourger (1): > dpkg: make sbuild timeout configurable > > doc/user_manual.md | 2 ++ > meta/classes/dpkg.bbclass | 7 +++++++ > 2 files changed, 9 insertions(+) > > -- > 2.39.2 > Applied to next, thanks.
diff --git a/meta/classes/dpkg.bbclass b/meta/classes/dpkg.bbclass index d61e9377..4accb076 100644 --- a/meta/classes/dpkg.bbclass +++ b/meta/classes/dpkg.bbclass @@ -4,6 +4,11 @@ inherit dpkg-base inherit dpkg-source +# maximum time (in minutes for the build), override for packages requiring +# much more time (e.g. when cross-compiling isn't an option / supported and +# the package large) +DPKG_BUILD_TIMEOUT ?= "150" + DPKG_PREBUILD_ENV_FILE="${WORKDIR}/dpkg_prebuild.env" # bitbake variables that should be passed into sbuild env @@ -94,6 +99,7 @@ dpkg_runbuild() { ${@ expand_sbuild_pt_additions(d)} echo '$apt_keep_downloaded_packages = 1;' >> ${SBUILD_CONFIG} + echo '$stalled_pkg_timeout = ${DPKG_BUILD_TIMEOUT};' >> ${SBUILD_CONFIG} DEB_SOURCE_NAME=$(dpkg-parsechangelog --show-field Source --file ${WORKDIR}/${PPS}/debian/changelog) DSC_FILE=$(find ${WORKDIR} -name "${DEB_SOURCE_NAME}*.dsc" -maxdepth 1 -print)
Some builds (especially those under qemu) can take a very long time and fail only because they did not complete within 2.5 hours. Let recipes budget some more time by setting DPKG_BUILD_TIMEOUT to a larger value (defaults to 150 minutes like sbuild). Signed-off-by: Cedric Hombourger <cedric.hombourger@siemens.com> --- meta/classes/dpkg.bbclass | 6 ++++++ 1 file changed, 6 insertions(+)