[1/2] ci: switch to Ubuntu 20.04

Message ID 20220426071828.1810-1-david.marchand@redhat.com (mailing list archive)
State Superseded, archived
Delegated to: David Marchand
Headers
Series [1/2] ci: switch to Ubuntu 20.04 |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

David Marchand April 26, 2022, 7:18 a.m. UTC
  Ubuntu 18.04 is now rather old.
Besides, other entities in our CI are also testing this distribution.

Switch to a newer Ubuntu release and benefit from more recent
tool(chain)s: for example, net/cnxk now builds fine and can be
re-enabled.

Signed-off-by: David Marchand <david.marchand@redhat.com>
---
 .ci/linux-build.sh                            |  7 ++----
 .github/workflows/build.yml                   | 22 +++++++++----------
 config/arm/arm64_armv8_linux_clang_ubuntu2004 |  1 +
 .../ppc/ppc64le-power8-linux-gcc-ubuntu2004   |  1 +
 4 files changed, 14 insertions(+), 17 deletions(-)
 create mode 120000 config/arm/arm64_armv8_linux_clang_ubuntu2004
 create mode 120000 config/ppc/ppc64le-power8-linux-gcc-ubuntu2004
  

Comments

Ruifeng Wang April 26, 2022, 9:14 a.m. UTC | #1
> -----Original Message-----
> From: David Marchand <david.marchand@redhat.com>
> Sent: Tuesday, April 26, 2022 3:18 PM
> To: dev@dpdk.org
> Cc: Aaron Conole <aconole@redhat.com>; Michael Santana
> <maicolgabriel@hotmail.com>; Ruifeng Wang <Ruifeng.Wang@arm.com>;
> Jan Viktorin <viktorin@rehivetech.com>; Bruce Richardson
> <bruce.richardson@intel.com>; David Christensen <drc@linux.vnet.ibm.com>
> Subject: [PATCH 1/2] ci: switch to Ubuntu 20.04
> 
> Ubuntu 18.04 is now rather old.
> Besides, other entities in our CI are also testing this distribution.
> 
> Switch to a newer Ubuntu release and benefit from more recent
> tool(chain)s: for example, net/cnxk now builds fine and can be re-enabled.
> 
> Signed-off-by: David Marchand <david.marchand@redhat.com>
> ---

<snip>

> diff --git a/config/arm/arm64_armv8_linux_clang_ubuntu2004
> b/config/arm/arm64_armv8_linux_clang_ubuntu2004
> new file mode 120000
> index 0000000000..01f5b7643e
> --- /dev/null
> +++ b/config/arm/arm64_armv8_linux_clang_ubuntu2004

How about naming it without '2004'? 
It is a link to ubuntu1804 crossfile because distribution dependent paths in the file doesn't change. And I believe the consistency will be kept across distribution releases.
So we can use a file name without distribution release number for the latest/default Ubuntu environment. 
This removes the need for a new crossfile for each Ubuntu LTS release. 

Thanks.
> @@ -0,0 +1 @@
> +arm64_armv8_linux_clang_ubuntu1804
> \ No newline at end of file
> diff --git a/config/ppc/ppc64le-power8-linux-gcc-ubuntu2004
> b/config/ppc/ppc64le-power8-linux-gcc-ubuntu2004
> new file mode 120000
> index 0000000000..9d6139a19b
> --- /dev/null
> +++ b/config/ppc/ppc64le-power8-linux-gcc-ubuntu2004
> @@ -0,0 +1 @@
> +ppc64le-power8-linux-gcc-ubuntu1804
> \ No newline at end of file
> --
> 2.23.0
  
Aaron Conole April 26, 2022, 3:06 p.m. UTC | #2
David Marchand <david.marchand@redhat.com> writes:

> Ubuntu 18.04 is now rather old.
> Besides, other entities in our CI are also testing this distribution.
>
> Switch to a newer Ubuntu release and benefit from more recent
> tool(chain)s: for example, net/cnxk now builds fine and can be
> re-enabled.
>
> Signed-off-by: David Marchand <david.marchand@redhat.com>
> ---

LGTM
Acked-by: Aaron Conole <aconole@redhat.com>
  
David Marchand April 28, 2022, 12:28 p.m. UTC | #3
On Tue, Apr 26, 2022 at 11:14 AM Ruifeng Wang <Ruifeng.Wang@arm.com> wrote:
>
> > -----Original Message-----
> > From: David Marchand <david.marchand@redhat.com>
> > Sent: Tuesday, April 26, 2022 3:18 PM
> > To: dev@dpdk.org
> > Cc: Aaron Conole <aconole@redhat.com>; Michael Santana
> > <maicolgabriel@hotmail.com>; Ruifeng Wang <Ruifeng.Wang@arm.com>;
> > Jan Viktorin <viktorin@rehivetech.com>; Bruce Richardson
> > <bruce.richardson@intel.com>; David Christensen <drc@linux.vnet.ibm.com>
> > Subject: [PATCH 1/2] ci: switch to Ubuntu 20.04
> >
> > Ubuntu 18.04 is now rather old.
> > Besides, other entities in our CI are also testing this distribution.
> >
> > Switch to a newer Ubuntu release and benefit from more recent
> > tool(chain)s: for example, net/cnxk now builds fine and can be re-enabled.
> >
> > Signed-off-by: David Marchand <david.marchand@redhat.com>
> > ---
>
> <snip>
>
> > diff --git a/config/arm/arm64_armv8_linux_clang_ubuntu2004
> > b/config/arm/arm64_armv8_linux_clang_ubuntu2004
> > new file mode 120000
> > index 0000000000..01f5b7643e
> > --- /dev/null
> > +++ b/config/arm/arm64_armv8_linux_clang_ubuntu2004
>
> How about naming it without '2004'?
> It is a link to ubuntu1804 crossfile because distribution dependent paths in the file doesn't change. And I believe the consistency will be kept across distribution releases.
> So we can use a file name without distribution release number for the latest/default Ubuntu environment.
> This removes the need for a new crossfile for each Ubuntu LTS release.

I had some concerns about renaming the 1804 file, if someone relied on it.
But on the other hand, this is only for cross compiling and I guess
people are only using this file through GHA.
If they did use this file out of GHA, it is trivial to switch to the
renamed file.

I'll do what you suggested.
  

Patch

diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh
index 6a937611fa..30119b61ba 100755
--- a/.ci/linux-build.sh
+++ b/.ci/linux-build.sh
@@ -38,18 +38,15 @@  catch_coredump() {
 }
 
 if [ "$AARCH64" = "true" ]; then
-    # Note: common/cnxk is disabled for Ubuntu 18.04
-    # https://bugs.dpdk.org/show_bug.cgi?id=697
-    OPTS="$OPTS -Ddisable_drivers=common/cnxk"
     if [ "${CC%%clang}" != "$CC" ]; then
-        OPTS="$OPTS --cross-file config/arm/arm64_armv8_linux_clang_ubuntu1804"
+        OPTS="$OPTS --cross-file config/arm/arm64_armv8_linux_clang_ubuntu2004"
     else
         OPTS="$OPTS --cross-file config/arm/arm64_armv8_linux_gcc"
     fi
 fi
 
 if [ "$PPC64LE" = "true" ]; then
-    OPTS="$OPTS --cross-file config/ppc/ppc64le-power8-linux-gcc-ubuntu1804"
+    OPTS="$OPTS --cross-file config/ppc/ppc64le-power8-linux-gcc-ubuntu2004"
 fi
 
 if [ "$BUILD_DOCS" = "true" ]; then
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 22daaabb91..812aa7055d 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -30,43 +30,41 @@  jobs:
       fail-fast: false
       matrix:
         config:
-          - os: ubuntu-18.04
+          - os: ubuntu-20.04
             compiler: gcc
             library: static
-          - os: ubuntu-18.04
+          - os: ubuntu-20.04
             compiler: gcc
             library: shared
             mini: mini
-          - os: ubuntu-18.04
+          - os: ubuntu-20.04
             compiler: gcc
             library: shared
             checks: abi+doc+tests
-          - os: ubuntu-18.04
+          - os: ubuntu-20.04
             compiler: clang
             library: static
-          - os: ubuntu-18.04
+          - os: ubuntu-20.04
             compiler: clang
             library: shared
             checks: doc+tests
-          - os: ubuntu-18.04
+          - os: ubuntu-20.04
             compiler: gcc
             library: static
             cross: i386
-          # Note: common/cnxk is disabled for Ubuntu 18.04
-          # https://bugs.dpdk.org/show_bug.cgi?id=697
-          - os: ubuntu-18.04
+          - os: ubuntu-20.04
             compiler: gcc
             library: static
             cross: aarch64
-          - os: ubuntu-18.04
+          - os: ubuntu-20.04
             compiler: gcc
             library: shared
             cross: aarch64
-          - os: ubuntu-18.04
+          - os: ubuntu-20.04
             compiler: gcc
             library: static
             cross: ppc64le
-          - os: ubuntu-18.04
+          - os: ubuntu-20.04
             compiler: gcc
             library: shared
             cross: ppc64le
diff --git a/config/arm/arm64_armv8_linux_clang_ubuntu2004 b/config/arm/arm64_armv8_linux_clang_ubuntu2004
new file mode 120000
index 0000000000..01f5b7643e
--- /dev/null
+++ b/config/arm/arm64_armv8_linux_clang_ubuntu2004
@@ -0,0 +1 @@ 
+arm64_armv8_linux_clang_ubuntu1804
\ No newline at end of file
diff --git a/config/ppc/ppc64le-power8-linux-gcc-ubuntu2004 b/config/ppc/ppc64le-power8-linux-gcc-ubuntu2004
new file mode 120000
index 0000000000..9d6139a19b
--- /dev/null
+++ b/config/ppc/ppc64le-power8-linux-gcc-ubuntu2004
@@ -0,0 +1 @@ 
+ppc64le-power8-linux-gcc-ubuntu1804
\ No newline at end of file