Browse Source

CI: upgrade runner to `ubuntu-22.04`

Benoit Blanchon 9 months ago
parent
commit
377cf63075
2 changed files with 38 additions and 32 deletions
  1. 37 31
      .github/workflows/ci.yml
  2. 1 1
      .github/workflows/release.yml

+ 37 - 31
.github/workflows/ci.yml

@@ -94,28 +94,32 @@ jobs:
       matrix:
         include:
           - clang: "3.9"
-            runner: ubuntu-20.04
+            runner: ubuntu-22.04
             archive: bionic
           - clang: "4.0"
-            runner: ubuntu-20.04
+            runner: ubuntu-22.04
             archive: bionic
           - clang: "5.0"
-            runner: ubuntu-20.04
+            runner: ubuntu-22.04
             archive: bionic
           - clang: "6.0"
-            runner: ubuntu-20.04
+            runner: ubuntu-22.04
             archive: bionic
           - clang: "7"
-            runner: ubuntu-20.04
+            runner: ubuntu-22.04
+            archive: focal
           - clang: "8"
             cxxflags: -fsanitize=leak -fno-sanitize-recover=all
-            runner: ubuntu-20.04
+            runner: ubuntu-22.04
+            archive: focal
           - clang: "9"
             cxxflags: -fsanitize=undefined -fno-sanitize-recover=all
-            runner: ubuntu-20.04
+            runner: ubuntu-22.04
+            archive: focal
           - clang: "10"
             cxxflags: -fsanitize=address -fno-sanitize-recover=all
-            runner: ubuntu-20.04
+            runner: ubuntu-22.04
+            archive: focal
           - clang: "11"
             runner: ubuntu-22.04
           - clang: "12"
@@ -131,6 +135,8 @@ jobs:
       - name: Add archive repositories
         if: matrix.archive
         run: |
+          sudo gpg --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32
+          sudo gpg --export 3B4FE6ACC0B21F32 | sudo tee /etc/apt/trusted.gpg.d/ubuntu-keyring.gpg > /dev/null
           sudo add-apt-repository -yn 'deb http://archive.ubuntu.com/ubuntu/ ${{ matrix.archive }} main'
           sudo add-apt-repository -yn 'deb http://archive.ubuntu.com/ubuntu/ ${{ matrix.archive }} universe'
       - name: Install Clang ${{ matrix.clang }}
@@ -141,7 +147,7 @@ jobs:
         if: matrix.clang >= 11
         run: sudo apt-get install -y libc++-${{ matrix.clang }}-dev libc++abi-${{ matrix.clang }}-dev
       - name: Install libunwind ${{ matrix.clang }}
-        if: matrix.clang == 12  # dependency is missing in Ubuntu 22.04
+        if: matrix.clang == 12 # dependency is missing in Ubuntu 22.04
         run: sudo apt-get install -y libunwind-${{ matrix.clang }}-dev
       - name: Checkout
         uses: actions/checkout@v4
@@ -163,7 +169,7 @@ jobs:
   conf_test:
     name: Test configuration on Linux
     needs: [gcc, clang]
-    runs-on: ubuntu-20.04
+    runs-on: ubuntu-22.04
     steps:
       - name: Install
         run: |
@@ -257,7 +263,7 @@ jobs:
             board: arduino:avr:uno
           - core: arduino:samd
             board: arduino:samd:mkr1000
-    runs-on: ubuntu-20.04
+    runs-on: ubuntu-22.04
     steps:
       - name: Checkout
         uses: actions/checkout@v4
@@ -412,7 +418,7 @@ jobs:
   arm:
     name: GCC for ARM processor
     needs: gcc
-    runs-on: ubuntu-20.04
+    runs-on: ubuntu-22.04
     steps:
       - name: Install
         run: |
@@ -431,7 +437,7 @@ jobs:
   coverage:
     needs: gcc
     name: Coverage
-    runs-on: ubuntu-20.04
+    runs-on: ubuntu-22.04
     steps:
       - name: Install
         run: sudo apt-get install -y lcov ninja-build
@@ -463,7 +469,7 @@ jobs:
   valgrind:
     needs: gcc
     name: Valgrind
-    runs-on: ubuntu-20.04
+    runs-on: ubuntu-22.04
     steps:
       - name: Install
         run: |
@@ -485,7 +491,7 @@ jobs:
   clang-tidy:
     needs: clang
     name: Clang-Tidy
-    runs-on: ubuntu-20.04
+    runs-on: ubuntu-22.04
     steps:
       - name: Install
         run: sudo apt-get install -y clang-tidy cmake ninja-build
@@ -502,7 +508,7 @@ jobs:
   amalgamate:
     needs: gcc
     name: Amalgamate ArduinoJson.h
-    runs-on: ubuntu-20.04
+    runs-on: ubuntu-22.04
     steps:
       - name: Checkout
         uses: actions/checkout@v4
@@ -578,7 +584,7 @@ jobs:
 
   codeql:
     name: CodeQL
-    runs-on: ubuntu-20.04
+    runs-on: ubuntu-22.04
     needs: gcc
 
     permissions:
@@ -587,20 +593,20 @@ jobs:
       security-events: write
 
     steps:
-    - name: Checkout repository
-      uses: actions/checkout@v4
+      - name: Checkout repository
+        uses: actions/checkout@v4
 
-    - name: Initialize CodeQL
-      uses: github/codeql-action/init@v3
-      with:
-        languages: cpp
+      - name: Initialize CodeQL
+        uses: github/codeql-action/init@v3
+        with:
+          languages: cpp
 
-    - name: Build
-      run: |
-        cmake -DCMAKE_BUILD_TYPE=Debug .
-        cmake --build .
+      - name: Build
+        run: |
+          cmake -DCMAKE_BUILD_TYPE=Debug .
+          cmake --build .
 
-    - name: Perform CodeQL Analysis
-      uses: github/codeql-action/analyze@v3
-      with:
-        category: "/language:cpp"
+      - name: Perform CodeQL Analysis
+        uses: github/codeql-action/analyze@v3
+        with:
+          category: "/language:cpp"

+ 1 - 1
.github/workflows/release.yml

@@ -8,7 +8,7 @@ on:
 jobs:
   release:
     name: Create release
-    runs-on: ubuntu-20.04
+    runs-on: ubuntu-22.04
     steps:
       - name: Set variables
         id: init