diff mbox series

[XEN,1/4] automation: Remove clang-8 from Debian unstable container

Message ID 20230215120208.35807-2-anthony.perard@citrix.com (mailing list archive)
State Superseded
Headers show
Series automation: Update containers to allow HTTPS access to xenbits | expand

Commit Message

Anthony PERARD Feb. 15, 2023, 12:02 p.m. UTC
First, apt complain that it isn't the right way to add keys anymore,
but hopefully that's just a warning.

Second, we can't install clang-8:
The following packages have unmet dependencies:
 clang-8 : Depends: libstdc++-8-dev but it is not installable
           Depends: libgcc-8-dev but it is not installable
           Depends: libobjc-8-dev but it is not installable
           Recommends: llvm-8-dev but it is not going to be installed
           Recommends: libomp-8-dev but it is not going to be installed
 libllvm8 : Depends: libffi7 (>= 3.3~20180313) but it is not installable
E: Unable to correct problems, you have held broken packages.

clang on Debian unstable is now version 14.0.6.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
---

Current container have:
root@f3d1fc4f58c7:/build# clang --version
clang version 8.0.1- (branches/release_80)
root@113cb5730b2a:/build# clang-8 --version
clang version 8.0.1- (branches/release_80)

(built about 3years ago)
---
 automation/build/debian/unstable-llvm-8.list |  3 ---
 automation/build/debian/unstable.dockerfile  | 12 ------------
 automation/gitlab-ci/build.yaml              | 10 ----------
 3 files changed, 25 deletions(-)
 delete mode 100644 automation/build/debian/unstable-llvm-8.list

Comments

Andrew Cooper Feb. 15, 2023, 12:26 p.m. UTC | #1
On 15/02/2023 12:02 pm, Anthony PERARD wrote:
> First, apt complain that it isn't the right way to add keys anymore,
> but hopefully that's just a warning.
>
> Second, we can't install clang-8:
> The following packages have unmet dependencies:
>  clang-8 : Depends: libstdc++-8-dev but it is not installable
>            Depends: libgcc-8-dev but it is not installable
>            Depends: libobjc-8-dev but it is not installable
>            Recommends: llvm-8-dev but it is not going to be installed
>            Recommends: libomp-8-dev but it is not going to be installed
>  libllvm8 : Depends: libffi7 (>= 3.3~20180313) but it is not installable
> E: Unable to correct problems, you have held broken packages.
>
> clang on Debian unstable is now version 14.0.6.
>
> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>

Yeah that's because clang 8 is way obsolete, and http://apt.llvm.org
only supports Clang 15 and later now.

In hindsight, it was a mistake to take unstable-llvm-8.list in the first
place.

Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
Anthony PERARD Feb. 15, 2023, 4:28 p.m. UTC | #2
On Wed, Feb 15, 2023 at 12:26:40PM +0000, Andrew Cooper wrote:
> On 15/02/2023 12:02 pm, Anthony PERARD wrote:
> > First, apt complain that it isn't the right way to add keys anymore,
> > but hopefully that's just a warning.
> >
> > Second, we can't install clang-8:
> > The following packages have unmet dependencies:
> >  clang-8 : Depends: libstdc++-8-dev but it is not installable
> >            Depends: libgcc-8-dev but it is not installable
> >            Depends: libobjc-8-dev but it is not installable
> >            Recommends: llvm-8-dev but it is not going to be installed
> >            Recommends: libomp-8-dev but it is not going to be installed
> >  libllvm8 : Depends: libffi7 (>= 3.3~20180313) but it is not installable
> > E: Unable to correct problems, you have held broken packages.
> >
> > clang on Debian unstable is now version 14.0.6.
> >
> > Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
> 
> Yeah that's because clang 8 is way obsolete, and http://apt.llvm.org
> only supports Clang 15 and later now.
> 
> In hindsight, it was a mistake to take unstable-llvm-8.list in the first
> place.
> 
> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>

I just realize that this change is going to break gitlab testing in the
staging-4* branches. So I guess this mean that we will have to backport
this patch, or at least the gitlab-ci part.
Andrew Cooper Feb. 15, 2023, 4:31 p.m. UTC | #3
On 15/02/2023 4:28 pm, Anthony PERARD wrote:
> On Wed, Feb 15, 2023 at 12:26:40PM +0000, Andrew Cooper wrote:
>> On 15/02/2023 12:02 pm, Anthony PERARD wrote:
>>> First, apt complain that it isn't the right way to add keys anymore,
>>> but hopefully that's just a warning.
>>>
>>> Second, we can't install clang-8:
>>> The following packages have unmet dependencies:
>>>  clang-8 : Depends: libstdc++-8-dev but it is not installable
>>>            Depends: libgcc-8-dev but it is not installable
>>>            Depends: libobjc-8-dev but it is not installable
>>>            Recommends: llvm-8-dev but it is not going to be installed
>>>            Recommends: libomp-8-dev but it is not going to be installed
>>>  libllvm8 : Depends: libffi7 (>= 3.3~20180313) but it is not installable
>>> E: Unable to correct problems, you have held broken packages.
>>>
>>> clang on Debian unstable is now version 14.0.6.
>>>
>>> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
>> Yeah that's because clang 8 is way obsolete, and http://apt.llvm.org
>> only supports Clang 15 and later now.
>>
>> In hindsight, it was a mistake to take unstable-llvm-8.list in the first
>> place.
>>
>> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
> I just realize that this change is going to break gitlab testing in the
> staging-4* branches. So I guess this mean that we will have to backport
> this patch, or at least the gitlab-ci part.

I don't think it will.  The currently cached container is still "good"
for the older branches to use, but we ought to backport the change
nevertheless.

Given that the container is un(re)buildable anyway, we're not losing
anything, I don't think.

~Andrew
Andrew Cooper Feb. 15, 2023, 6:15 p.m. UTC | #4
On 15/02/2023 4:31 pm, Andrew Cooper wrote:
> On 15/02/2023 4:28 pm, Anthony PERARD wrote:
>> On Wed, Feb 15, 2023 at 12:26:40PM +0000, Andrew Cooper wrote:
>>> On 15/02/2023 12:02 pm, Anthony PERARD wrote:
>>>> First, apt complain that it isn't the right way to add keys anymore,
>>>> but hopefully that's just a warning.
>>>>
>>>> Second, we can't install clang-8:
>>>> The following packages have unmet dependencies:
>>>>  clang-8 : Depends: libstdc++-8-dev but it is not installable
>>>>            Depends: libgcc-8-dev but it is not installable
>>>>            Depends: libobjc-8-dev but it is not installable
>>>>            Recommends: llvm-8-dev but it is not going to be installed
>>>>            Recommends: libomp-8-dev but it is not going to be installed
>>>>  libllvm8 : Depends: libffi7 (>= 3.3~20180313) but it is not installable
>>>> E: Unable to correct problems, you have held broken packages.
>>>>
>>>> clang on Debian unstable is now version 14.0.6.
>>>>
>>>> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
>>> Yeah that's because clang 8 is way obsolete, and http://apt.llvm.org
>>> only supports Clang 15 and later now.
>>>
>>> In hindsight, it was a mistake to take unstable-llvm-8.list in the first
>>> place.
>>>
>>> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
>> I just realize that this change is going to break gitlab testing in the
>> staging-4* branches. So I guess this mean that we will have to backport
>> this patch, or at least the gitlab-ci part.
> I don't think it will.  The currently cached container is still "good"
> for the older branches to use, but we ought to backport the change
> nevertheless.
>
> Given that the container is un(re)buildable anyway, we're not losing
> anything, I don't think.

Ah, so.  Applying just this patch won't break older trees.

But applying this patch, and patch 3, then rebuilding the the debian
unstable container will break older branches, because there will no
longer be anything called clang-8 in the container.

This demonstrates even more that referencing the compiler by exact
version is a mistake.  As is using names like unstable.

As I said up front when we added CI of this form, we were always going
to retrofit some changes to all branches (including the security-only
branches) to keep this working.  These chicken are coming back to roost.

~Andrew
Stefano Stabellini Feb. 16, 2023, 12:06 a.m. UTC | #5
On Wed, 15 Feb 2023, Andrew Cooper wrote:
> On 15/02/2023 4:31 pm, Andrew Cooper wrote:
> > On 15/02/2023 4:28 pm, Anthony PERARD wrote:
> >> On Wed, Feb 15, 2023 at 12:26:40PM +0000, Andrew Cooper wrote:
> >>> On 15/02/2023 12:02 pm, Anthony PERARD wrote:
> >>>> First, apt complain that it isn't the right way to add keys anymore,
> >>>> but hopefully that's just a warning.
> >>>>
> >>>> Second, we can't install clang-8:
> >>>> The following packages have unmet dependencies:
> >>>>  clang-8 : Depends: libstdc++-8-dev but it is not installable
> >>>>            Depends: libgcc-8-dev but it is not installable
> >>>>            Depends: libobjc-8-dev but it is not installable
> >>>>            Recommends: llvm-8-dev but it is not going to be installed
> >>>>            Recommends: libomp-8-dev but it is not going to be installed
> >>>>  libllvm8 : Depends: libffi7 (>= 3.3~20180313) but it is not installable
> >>>> E: Unable to correct problems, you have held broken packages.
> >>>>
> >>>> clang on Debian unstable is now version 14.0.6.
> >>>>
> >>>> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
> >>> Yeah that's because clang 8 is way obsolete, and http://apt.llvm.org
> >>> only supports Clang 15 and later now.
> >>>
> >>> In hindsight, it was a mistake to take unstable-llvm-8.list in the first
> >>> place.
> >>>
> >>> Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
> >> I just realize that this change is going to break gitlab testing in the
> >> staging-4* branches. So I guess this mean that we will have to backport
> >> this patch, or at least the gitlab-ci part.
> > I don't think it will.  The currently cached container is still "good"
> > for the older branches to use, but we ought to backport the change
> > nevertheless.
> >
> > Given that the container is un(re)buildable anyway, we're not losing
> > anything, I don't think.
> 
> Ah, so.  Applying just this patch won't break older trees.
> 
> But applying this patch, and patch 3, then rebuilding the the debian
> unstable container will break older branches, because there will no
> longer be anything called clang-8 in the container.
> 
> This demonstrates even more that referencing the compiler by exact
> version is a mistake.  As is using names like unstable.
> 
> As I said up front when we added CI of this form, we were always going
> to retrofit some changes to all branches (including the security-only
> branches) to keep this working.  These chicken are coming back to roost.

Yes. Like you said, I think we should backport this patch (or just the
part of it affecting .gitlab*) to the stable trees.
diff mbox series

Patch

diff --git a/automation/build/debian/unstable-llvm-8.list b/automation/build/debian/unstable-llvm-8.list
deleted file mode 100644
index dc119fa0b4..0000000000
--- a/automation/build/debian/unstable-llvm-8.list
+++ /dev/null
@@ -1,3 +0,0 @@ 
-# Unstable LLVM 8 repos
-deb http://apt.llvm.org/unstable/ llvm-toolchain-8 main
-deb-src http://apt.llvm.org/unstable/ llvm-toolchain-8 main
diff --git a/automation/build/debian/unstable.dockerfile b/automation/build/debian/unstable.dockerfile
index 9de766d596..b560337b7a 100644
--- a/automation/build/debian/unstable.dockerfile
+++ b/automation/build/debian/unstable.dockerfile
@@ -51,15 +51,3 @@  RUN apt-get update && \
         apt-get autoremove -y && \
         apt-get clean && \
         rm -rf /var/lib/apt/lists* /tmp/* /var/tmp/*
-
-RUN wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|apt-key add -
-COPY unstable-llvm-8.list /etc/apt/sources.list.d/
-
-RUN apt-get update && \
-    apt-get --quiet --yes install \
-        clang-8 \
-        lld-8 \
-        && \
-        apt-get autoremove -y && \
-        apt-get clean && \
-        rm -rf /var/lib/apt/lists* /tmp/* /var/tmp/*
diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
index a053c5c732..7d8af93653 100644
--- a/automation/gitlab-ci/build.yaml
+++ b/automation/gitlab-ci/build.yaml
@@ -339,16 +339,6 @@  debian-unstable-clang-debug:
   variables:
     CONTAINER: debian:unstable
 
-debian-unstable-clang-8:
-  extends: .clang-8-x86-64-build
-  variables:
-    CONTAINER: debian:unstable
-
-debian-unstable-clang-8-debug:
-  extends: .clang-8-x86-64-build-debug
-  variables:
-    CONTAINER: debian:unstable
-
 debian-unstable-gcc:
   extends: .gcc-x86-64-build
   variables: