Message ID | 20240223094207.1482845-1-cedric.hombourger@siemens.com |
---|---|
State | Superseded, archived |
Headers | show |
Series | repository: make repo_del_srcpackage delete only source packages | expand |
On 23.02.24 10:42, 'Cedric Hombourger' via isar-users wrote: > The reprepro removesrc command not only deletes the requested source > package but also any binary packages that were built from it. If > do_deploy_source is recalled after do_deploy_deb, we would see > previously deployed binary packages vanish from isar-apt. > While I agree that a task should do what it is supposed to do, not more: How is such a race possible? dpkg_build depends on deploy_source, and deploy_deb depends on dpkg_build. Jan > Signed-off-by: Cedric Hombourger <cedric.hombourger@siemens.com> > --- > meta/classes/repository.bbclass | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/meta/classes/repository.bbclass b/meta/classes/repository.bbclass > index a61e5dcd..28e712fd 100644 > --- a/meta/classes/repository.bbclass > +++ b/meta/classes/repository.bbclass > @@ -70,8 +70,8 @@ repo_del_srcpackage() { > if [ -n "${GNUPGHOME}" ]; then > export GNUPGHOME="${GNUPGHOME}" > fi > - reprepro -b "${dir}" --dbdir "${dbdir}" \ > - removesrc "${codename}" \ > + reprepro -b "${dir}" --dbdir "${dbdir}" -A source \ > + remove "${codename}" \ > "${packagename}" > } >
On Fri, 2024-02-23 at 12:34 +0100, Jan Kiszka wrote: > On 23.02.24 10:42, 'Cedric Hombourger' via isar-users wrote: > > The reprepro removesrc command not only deletes the requested > > source > > package but also any binary packages that were built from it. If > > do_deploy_source is recalled after do_deploy_deb, we would see > > previously deployed binary packages vanish from isar-apt. > > > > While I agree that a task should do what it is supposed to do, not > more: > How is such a race possible? dpkg_build depends on deploy_source, and > deploy_deb depends on dpkg_build. There's no race. The issue will be seen if you bitbake -fc deploy_source on a previously built recipe. > > Jan > > > Signed-off-by: Cedric Hombourger <cedric.hombourger@siemens.com> > > --- > > meta/classes/repository.bbclass | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/meta/classes/repository.bbclass > > b/meta/classes/repository.bbclass > > index a61e5dcd..28e712fd 100644 > > --- a/meta/classes/repository.bbclass > > +++ b/meta/classes/repository.bbclass > > @@ -70,8 +70,8 @@ repo_del_srcpackage() { > > if [ -n "${GNUPGHOME}" ]; then > > export GNUPGHOME="${GNUPGHOME}" > > fi > > - reprepro -b "${dir}" --dbdir "${dbdir}" \ > > - removesrc "${codename}" \ > > + reprepro -b "${dir}" --dbdir "${dbdir}" -A source \ > > + remove "${codename}" \ > > "${packagename}" > > } > > >
On 23.02.24 12:52, Hombourger, Cedric (DI CTO FDS CES LX) wrote: > On Fri, 2024-02-23 at 12:34 +0100, Jan Kiszka wrote: >> On 23.02.24 10:42, 'Cedric Hombourger' via isar-users wrote: >>> The reprepro removesrc command not only deletes the requested >>> source >>> package but also any binary packages that were built from it. If >>> do_deploy_source is recalled after do_deploy_deb, we would see >>> previously deployed binary packages vanish from isar-apt. >>> >> >> While I agree that a task should do what it is supposed to do, not >> more: >> How is such a race possible? dpkg_build depends on deploy_source, and >> deploy_deb depends on dpkg_build. > > There's no race. The issue will be seen if you bitbake -fc > deploy_source on a previously built recipe. > Ok, this information is valuable to assess the criticality of the issue, thus should go also into the commit message. Jan
diff --git a/meta/classes/repository.bbclass b/meta/classes/repository.bbclass index a61e5dcd..28e712fd 100644 --- a/meta/classes/repository.bbclass +++ b/meta/classes/repository.bbclass @@ -70,8 +70,8 @@ repo_del_srcpackage() { if [ -n "${GNUPGHOME}" ]; then export GNUPGHOME="${GNUPGHOME}" fi - reprepro -b "${dir}" --dbdir "${dbdir}" \ - removesrc "${codename}" \ + reprepro -b "${dir}" --dbdir "${dbdir}" -A source \ + remove "${codename}" \ "${packagename}" }
The reprepro removesrc command not only deletes the requested source package but also any binary packages that were built from it. If do_deploy_source is recalled after do_deploy_deb, we would see previously deployed binary packages vanish from isar-apt. Signed-off-by: Cedric Hombourger <cedric.hombourger@siemens.com> --- meta/classes/repository.bbclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)