[Qemu-devel] [PATCH] docker: Use a stable snapshot for Debian Sid

Philippe Mathieu-Daudé posted 1 patch 5 years, 5 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20181101183705.5422-1-philmd@redhat.com
Test docker-clang@ubuntu passed
Test checkpatch passed
Test asan passed
Test docker-mingw@fedora passed
Test docker-quick@centos7 passed
tests/docker/dockerfiles/debian-sid.docker | 4 ++++
1 file changed, 4 insertions(+)
[Qemu-devel] [PATCH] docker: Use a stable snapshot for Debian Sid
Posted by Philippe Mathieu-Daudé 5 years, 5 months ago
The Debian Sid repository is not garanteed to be stable, as his
'unstable' name suggest :)
To allow quick testing, packages are pushed various time a day,
which my be annoying when trying to use it for stable development
(which is not recommended, but Sid provides edge packages we use
for testing).

Debian provides repositories snapshots which are suitable for our
use. Pick a recent date that works. When required, update to newer
releases will be easy.

This fixes current issues with this image:

  $ make docker-image-debian-sid
  [...]
  The following packages have unmet dependencies:
   build-essential : Depends: dpkg-dev (>= 1.17.11) but it is not going to be installed
   git : Depends: perl but it is not going to be installed
         Depends: liberror-perl but it is not going to be installed
   pkg-config : Depends: libdpkg-perl but it is not going to be installed
   texinfo : Depends: perl (>= 5.26.2-6) but it is not going to be installed
             Depends: libtext-unidecode-perl but it is not going to be installed
             Depends: libxml-libxml-perl but it is not going to be installed
  E: Unable to correct problems, you have held broken packages.

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
 tests/docker/dockerfiles/debian-sid.docker | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/tests/docker/dockerfiles/debian-sid.docker b/tests/docker/dockerfiles/debian-sid.docker
index 9a3d168705..4e4cda0ba5 100644
--- a/tests/docker/dockerfiles/debian-sid.docker
+++ b/tests/docker/dockerfiles/debian-sid.docker
@@ -13,6 +13,10 @@
 
 FROM debian:sid-slim
 
+# Use a snapshot known to work (see http://snapshot.debian.org/#Usage)
+ENV DEBIAN_SNAPSHOT_DATE "20181030"
+RUN sed -i "s%^deb \(https\?://\)deb.debian.org/debian/\? \(.*\)%deb [check-valid-until=no] \1snapshot.debian.org/archive/debian/${DEBIAN_SNAPSHOT_DATE} \2%" /etc/apt/sources.list
+
 # Duplicate deb line as deb-src
 RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
 
-- 
2.17.2


Re: [Qemu-devel] [PATCH] docker: Use a stable snapshot for Debian Sid
Posted by Fam Zheng 5 years, 5 months ago
On Thu, 11/01 19:37, Philippe Mathieu-Daudé wrote:
> The Debian Sid repository is not garanteed to be stable, as his
> 'unstable' name suggest :)
> To allow quick testing, packages are pushed various time a day,
> which my be annoying when trying to use it for stable development
> (which is not recommended, but Sid provides edge packages we use
> for testing).
> 
> Debian provides repositories snapshots which are suitable for our
> use. Pick a recent date that works. When required, update to newer
> releases will be easy.
> 
> This fixes current issues with this image:
> 
>   $ make docker-image-debian-sid
>   [...]
>   The following packages have unmet dependencies:
>    build-essential : Depends: dpkg-dev (>= 1.17.11) but it is not going to be installed
>    git : Depends: perl but it is not going to be installed
>          Depends: liberror-perl but it is not going to be installed
>    pkg-config : Depends: libdpkg-perl but it is not going to be installed
>    texinfo : Depends: perl (>= 5.26.2-6) but it is not going to be installed
>              Depends: libtext-unidecode-perl but it is not going to be installed
>              Depends: libxml-libxml-perl but it is not going to be installed
>   E: Unable to correct problems, you have held broken packages.
> 
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
>  tests/docker/dockerfiles/debian-sid.docker | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/tests/docker/dockerfiles/debian-sid.docker b/tests/docker/dockerfiles/debian-sid.docker
> index 9a3d168705..4e4cda0ba5 100644
> --- a/tests/docker/dockerfiles/debian-sid.docker
> +++ b/tests/docker/dockerfiles/debian-sid.docker
> @@ -13,6 +13,10 @@
>  
>  FROM debian:sid-slim
>  
> +# Use a snapshot known to work (see http://snapshot.debian.org/#Usage)
> +ENV DEBIAN_SNAPSHOT_DATE "20181030"
> +RUN sed -i "s%^deb \(https\?://\)deb.debian.org/debian/\? \(.*\)%deb [check-valid-until=no] \1snapshot.debian.org/archive/debian/${DEBIAN_SNAPSHOT_DATE} \2%" /etc/apt/sources.list
> +
>  # Duplicate deb line as deb-src
>  RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
>  
> -- 
> 2.17.2
> 

Queued, thanks!

Fam

Re: [Qemu-devel] [PATCH] docker: Use a stable snapshot for Debian Sid
Posted by Philippe Mathieu-Daudé 5 years, 5 months ago
Hi Fam,

Thanks for picking this.

On Fri, Nov 2, 2018 at 7:48 AM Fam Zheng <famz@redhat.com> wrote:
> On Thu, 11/01 19:37, Philippe Mathieu-Daudé wrote:
> > The Debian Sid repository is not garanteed to be stable, as his
> > 'unstable' name suggest :)

There is an error in "my be" -> "might be"...
Do you mind to update the comment:

> > To allow quick testing, packages are pushed various time a day,
> > which my be annoying when trying to use it for stable development
> > (which is not recommended, but Sid provides edge packages we use
> > for testing).

By:

To allow quick testing, Debian maintainers might push packages
various time a day. Sometime package dependencies might break,
which is annoying when using this repository for stable development
(which is not recommended, but Sid provides edge packages we use
for testing).

I can resend as v2 if you prefer.

Thanks!

Phil.

> > (which is not recommended, but Sid provides edge packages we use
> > for testing).
> >
> > Debian provides repositories snapshots which are suitable for our
> > use. Pick a recent date that works. When required, update to newer
> > releases will be easy.
> >
> > This fixes current issues with this image:
> >
> >   $ make docker-image-debian-sid
> >   [...]
> >   The following packages have unmet dependencies:
> >    build-essential : Depends: dpkg-dev (>= 1.17.11) but it is not going to be installed
> >    git : Depends: perl but it is not going to be installed
> >          Depends: liberror-perl but it is not going to be installed
> >    pkg-config : Depends: libdpkg-perl but it is not going to be installed
> >    texinfo : Depends: perl (>= 5.26.2-6) but it is not going to be installed
> >              Depends: libtext-unidecode-perl but it is not going to be installed
> >              Depends: libxml-libxml-perl but it is not going to be installed
> >   E: Unable to correct problems, you have held broken packages.
> >
> > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> > ---
> >  tests/docker/dockerfiles/debian-sid.docker | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/tests/docker/dockerfiles/debian-sid.docker b/tests/docker/dockerfiles/debian-sid.docker
> > index 9a3d168705..4e4cda0ba5 100644
> > --- a/tests/docker/dockerfiles/debian-sid.docker
> > +++ b/tests/docker/dockerfiles/debian-sid.docker
> > @@ -13,6 +13,10 @@
> >
> >  FROM debian:sid-slim
> >
> > +# Use a snapshot known to work (see http://snapshot.debian.org/#Usage)
> > +ENV DEBIAN_SNAPSHOT_DATE "20181030"
> > +RUN sed -i "s%^deb \(https\?://\)deb.debian.org/debian/\? \(.*\)%deb [check-valid-until=no] \1snapshot.debian.org/archive/debian/${DEBIAN_SNAPSHOT_DATE} \2%" /etc/apt/sources.list
> > +
> >  # Duplicate deb line as deb-src
> >  RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
> >
> > --
> > 2.17.2
> >
>
> Queued, thanks!
>
> Fam

Re: [Qemu-devel] [PATCH] docker: Use a stable snapshot for Debian Sid
Posted by Fam Zheng 5 years, 5 months ago
On Fri, Nov 2, 2018 at 3:20 PM Philippe Mathieu-Daudé <f4bug@amsat.org> wrote:
>
> Hi Fam,
>
> Thanks for picking this.
>
> On Fri, Nov 2, 2018 at 7:48 AM Fam Zheng <famz@redhat.com> wrote:
> > On Thu, 11/01 19:37, Philippe Mathieu-Daudé wrote:
> > > The Debian Sid repository is not garanteed to be stable, as his
> > > 'unstable' name suggest :)
>
> There is an error in "my be" -> "might be"...
> Do you mind to update the comment:
>
> > > To allow quick testing, packages are pushed various time a day,
> > > which my be annoying when trying to use it for stable development
> > > (which is not recommended, but Sid provides edge packages we use
> > > for testing).
>
> By:
>
> To allow quick testing, Debian maintainers might push packages
> various time a day. Sometime package dependencies might break,
> which is annoying when using this repository for stable development
> (which is not recommended, but Sid provides edge packages we use
> for testing).

Sure, updated in my queue.

Fam

Re: [Qemu-devel] [PATCH] docker: Use a stable snapshot for Debian Sid
Posted by Philippe Mathieu-Daudé 5 years, 4 months ago
Hi Fam,

On 11/2/18 8:24 AM, Fam Zheng wrote:
> On Fri, Nov 2, 2018 at 3:20 PM Philippe Mathieu-Daudé <f4bug@amsat.org> wrote:
>>
>> Hi Fam,
>>
>> Thanks for picking this.
>>
>> On Fri, Nov 2, 2018 at 7:48 AM Fam Zheng <famz@redhat.com> wrote:
>>> On Thu, 11/01 19:37, Philippe Mathieu-Daudé wrote:
>>>> The Debian Sid repository is not garanteed to be stable, as his
>>>> 'unstable' name suggest :)
>>
>> There is an error in "my be" -> "might be"...
>> Do you mind to update the comment:
>>
>>>> To allow quick testing, packages are pushed various time a day,
>>>> which my be annoying when trying to use it for stable development
>>>> (which is not recommended, but Sid provides edge packages we use
>>>> for testing).
>>
>> By:
>>
>> To allow quick testing, Debian maintainers might push packages
>> various time a day. Sometime package dependencies might break,
>> which is annoying when using this repository for stable development
>> (which is not recommended, but Sid provides edge packages we use
>> for testing).
> 
> Sure, updated in my queue.

It seems your queue never hit master...

Re: [Qemu-devel] [PATCH] docker: Use a stable snapshot for Debian Sid
Posted by Fam Zheng 5 years, 3 months ago

> On Dec 20, 2018, at 19:20, Philippe Mathieu-Daudé <philmd@redhat.com> wrote:
> 
> Hi Fam,
> 
> On 11/2/18 8:24 AM, Fam Zheng wrote:
>> On Fri, Nov 2, 2018 at 3:20 PM Philippe Mathieu-Daudé <f4bug@amsat.org> wrote:
>>> 
>>> Hi Fam,
>>> 
>>> Thanks for picking this.
>>> 
>>> On Fri, Nov 2, 2018 at 7:48 AM Fam Zheng <famz@redhat.com> wrote:
>>>> On Thu, 11/01 19:37, Philippe Mathieu-Daudé wrote:
>>>>> The Debian Sid repository is not garanteed to be stable, as his
>>>>> 'unstable' name suggest :)
>>> 
>>> There is an error in "my be" -> "might be"...
>>> Do you mind to update the comment:
>>> 
>>>>> To allow quick testing, packages are pushed various time a day,
>>>>> which my be annoying when trying to use it for stable development
>>>>> (which is not recommended, but Sid provides edge packages we use
>>>>> for testing).
>>> 
>>> By:
>>> 
>>> To allow quick testing, Debian maintainers might push packages
>>> various time a day. Sometime package dependencies might break,
>>> which is annoying when using this repository for stable development
>>> (which is not recommended, but Sid provides edge packages we use
>>> for testing).
>> 
>> Sure, updated in my queue.
> 
> It seems your queue never hit master…
> 

Oh.. I'll have to check out later today.

Fam




Re: [Qemu-devel] [PATCH] docker: Use a stable snapshot for Debian Sid
Posted by Alex Bennée 5 years, 3 months ago
Philippe Mathieu-Daudé <philmd@redhat.com> writes:

> The Debian Sid repository is not garanteed to be stable, as his
> 'unstable' name suggest :)
> To allow quick testing, packages are pushed various time a day,
> which my be annoying when trying to use it for stable development
> (which is not recommended, but Sid provides edge packages we use
> for testing).
>
> Debian provides repositories snapshots which are suitable for our
> use. Pick a recent date that works. When required, update to newer
> releases will be easy.
>
> This fixes current issues with this image:
>
>   $ make docker-image-debian-sid
>   [...]
>   The following packages have unmet dependencies:
>    build-essential : Depends: dpkg-dev (>= 1.17.11) but it is not going to be installed
>    git : Depends: perl but it is not going to be installed
>          Depends: liberror-perl but it is not going to be installed
>    pkg-config : Depends: libdpkg-perl but it is not going to be installed
>    texinfo : Depends: perl (>= 5.26.2-6) but it is not going to be installed
>              Depends: libtext-unidecode-perl but it is not going to be installed
>              Depends: libxml-libxml-perl but it is not going to be installed
>   E: Unable to correct problems, you have held broken packages.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
>  tests/docker/dockerfiles/debian-sid.docker | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/tests/docker/dockerfiles/debian-sid.docker b/tests/docker/dockerfiles/debian-sid.docker
> index 9a3d168705..4e4cda0ba5 100644
> --- a/tests/docker/dockerfiles/debian-sid.docker
> +++ b/tests/docker/dockerfiles/debian-sid.docker
> @@ -13,6 +13,10 @@
>
>  FROM debian:sid-slim
>
> +# Use a snapshot known to work (see http://snapshot.debian.org/#Usage)
> +ENV DEBIAN_SNAPSHOT_DATE "20181030"
> +RUN sed -i "s%^deb \(https\?://\)deb.debian.org/debian/\? \(.*\)%deb [check-valid-until=no] \1snapshot.debian.org/archive/debian/${DEBIAN_SNAPSHOT_DATE} \2%" /etc/apt/sources.list
> +

OK after much debugging and re-building I realise this isn't the whole
fix. We need to base the snapshot on an older docker image otherwise we
run into the problem of trying to downgrade. In my tree I've done:

  # This must be earlier than the snapshot date we are aiming for
  FROM debian:sid-20181011-slim

  # Use a snapshot known to work (see http://snapshot.debian.org/#Usage)
  ENV DEBIAN_SNAPSHOT_DATE "20181030"

If this patch hasn't already gone in via a Fam PR I'll include it in my
testing/next.

--
Alex Bennée