[X2Go-Commits] [nx-libs] 250/429: Add build jobs on containers

git-admin at x2go.org git-admin at x2go.org
Mon Oct 18 09:36:44 CEST 2021


This is an automated email from the git hooks/post-receive script.

x2go pushed a commit to branch 3.6.x
in repository nx-libs.

commit 763a9ee0ef774114f06e57edb3869ba5bfed6feb
Author: Mario Trangoni <mjtrangoni at gmail.com>
Date:   Sat Jan 30 18:07:40 2021 +0100

    Add build jobs on containers
    
    Signed-off-by: Mario Trangoni <mjtrangoni at gmail.com>
---
 .github/workflows/nx-libs.yml | 217 +++++++++++++++++++++++++++++++++---------
 1 file changed, 171 insertions(+), 46 deletions(-)

diff --git a/.github/workflows/nx-libs.yml b/.github/workflows/nx-libs.yml
index cc4878498..70177f419 100644
--- a/.github/workflows/nx-libs.yml
+++ b/.github/workflows/nx-libs.yml
@@ -7,50 +7,175 @@ on:
     branches: [ 3.6.x ]
 
 jobs:
- build:
-  name: Build on ${{ matrix.cfg.container }} - ${{ matrix.cfg.cpp-version }}
-  runs-on: ubuntu-latest
-  container: ${{ matrix.cfg.container }}
-  strategy:
-    fail-fast: false
-    matrix:
-      cfg:
-        - { container: 'ubuntu:16.04', cpp-version: gcc }
-        - { container: 'ubuntu:16.04', cpp-version: clang }
-        - { container: 'ubuntu:20.04', cpp-version: gcc }
-        - { container: 'ubuntu:20.04', cpp-version: clang }
-        - { container: 'debian:stable', cpp-version: gcc }
-        - { container: 'debian:stable', cpp-version: clang }
-        - { container: 'debian:sid', cpp-version: gcc }
-        - { container: 'debian:sid', cpp-version: clang }
-        - { container: 'centos:7', cpp-version: gcc }
-        - { container: 'centos:7', cpp-version: clang }
-        - { container: 'centos:8', cpp-version: gcc }
-        - { container: 'centos:8', cpp-version: clang }
-        - { container: 'fedora:latest', cpp-version: gcc }
-        - { container: 'fedora:latest', cpp-version: clang }
+  build:
+    name: Build on ${{ matrix.cfg.container }} - ${{ matrix.cfg.cc-version }}
+    runs-on: ubuntu-latest
+    container: ${{ matrix.cfg.container }}
+    strategy:
+      fail-fast: false
+      matrix:
+        cfg:
+          - { container: 'ubuntu:16.04', cc-version: gcc }
+          - { container: 'ubuntu:16.04', cc-version: clang }
+          - { container: 'ubuntu:20.04', cc-version: gcc }
+          - { container: 'ubuntu:20.04', cc-version: clang }
+          - { container: 'debian:stable', cc-version: gcc }
+          - { container: 'debian:stable', cc-version: clang }
+          - { container: 'debian:sid', cc-version: gcc }
+          - { container: 'debian:sid', cc-version: clang }
+          - { container: 'centos:7', cc-version: gcc }
+          - { container: 'centos:7', cc-version: clang }
+          - { container: 'centos:8', cc-version: gcc }
+          - { container: 'centos:8', cc-version: clang }
+          - { container: 'fedora:latest', cc-version: gcc }
+          - { container: 'fedora:latest', cc-version: clang }
 
-  steps:
-  - name: Install compiler ${{ matrix.cfg.cpp-version }}
-    shell: sh
-    run: |
-      case "${{ matrix.cfg.container }}" in
-        ubuntu*|debian*)
-          cat /etc/debian_version
-          apt-get update -q -y
-          apt-get install -q -y ${{ matrix.cfg.cpp-version }}
-          ${{ matrix.cfg.cpp-version }} --version
-          ;;
-        fedora*)
-          cat /etc/fedora-release
-          dnf -y update
-          dnf -y install ${{ matrix.cfg.cpp-version }}
-          ${{ matrix.cfg.cpp-version }} --version
-          ;;
-        centos*)
-          cat /etc/centos-release
-          yum -y update
-          yum -y install ${{ matrix.cfg.cpp-version }}
-          ${{ matrix.cfg.cpp-version }} --version
-          ;;
-      esac
+    steps:
+    - name: Install compiler ${{ matrix.cfg.cc-version }}
+      shell: sh
+      env:
+        DEBIAN_FRONTEND: noninteractive
+      run: |
+        case "${{ matrix.cfg.container }}" in
+          ubuntu*|debian*)
+            cat /etc/debian_version
+            apt-get update -q -y
+            apt-get install -q -y ${{ matrix.cfg.cc-version }}
+            ${{ matrix.cfg.cc-version }} --version
+            case "${{ matrix.cfg.cc-version }}" in
+              gcc)
+                apt-get install -q -y g++
+                ;;
+            esac
+            ;;
+          fedora*)
+            cat /etc/fedora-release
+            dnf -y update
+            dnf -y install ${{ matrix.cfg.cc-version }}
+            ${{ matrix.cfg.cc-version }} --version
+            ;;
+          centos:8)
+            cat /etc/centos-release
+            rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
+            dnf -y update
+            dnf -y install ${{ matrix.cfg.cc-version }}
+            ${{ matrix.cfg.cc-version }} --version
+            ;;
+          centos:7)
+            cat /etc/centos-release
+            rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
+            yum -y update
+            yum -y install ${{ matrix.cfg.cc-version }}
+            ${{ matrix.cfg.cc-version }} --version
+            ;;
+        esac
+
+    - name: Install nx-libs dependencies ${{ matrix.cfg.cc-version }}
+      shell: sh
+      env:
+        DEBIAN_FRONTEND: noninteractive
+      run: |
+        case "${{ matrix.cfg.container }}" in
+          ubuntu*|debian*)
+            # basic packages
+            apt-get install -q -y \
+              autoconf libtool make pkg-config
+            # imake deps
+            apt-get install -q -y \
+              libxkbfile-dev xfonts-utils xutils-dev
+            # X11 libraries deps
+            apt-get install -q -y \
+              libpixman-1-dev libjpeg-dev libxcomposite-dev libxdamage-dev \
+              libxml2-dev libxfont-dev libxinerama-dev libxpm-dev libxrandr-dev \
+              libxtst-dev x11proto-fonts-dev
+            # soft requirements
+            apt-get install -q -y \
+              quilt x11-xkb-utils
+            ;;
+          fedora*)
+            # basic packages
+            dnf -y install \
+              autoconf automake gcc-c++ libtool make imake pkgconfig which
+            # imake deps
+            dnf -y install \
+              xorg-x11-proto-devel zlib-devel
+            # X11 libraries deps
+            dnf -y install \
+              libjpeg-devel expat-devel libpng-devel libxml2-devel pixman-devel \
+              libX11-devel libXext-devel libXpm-devel libXfont2-devel \
+              libXdmcp-devel libXdamage-devel libXcomposite-devel \
+              libXrandr-devel libXfixes-devel libXtst-devel libXinerama-devel \
+              xorg-x11-font-utils libtirpc-devel xkeyboard-config
+            # soft requirements
+            dnf -y install \
+              quilt xorg-x11-xkb-utils-devel
+            ;;
+          centos:8)
+            # Enable powertools repository for imake
+            dnf -y install dnf-plugins-core epel-release
+            rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-8
+            dnf config-manager --set-enabled powertools
+            # basic packages
+            dnf -y install \
+              autoconf automake gcc-c++ libtool make imake pkgconfig which
+            # imake deps
+            dnf -y install \
+              xorg-x11-proto-devel zlib-devel
+            # X11 libraries deps
+            dnf -y install \
+              libjpeg-devel expat-devel libpng-devel libxml2-devel pixman-devel \
+              libX11-devel libXext-devel libXpm-devel libXfont2-devel \
+              libXdmcp-devel libXdamage-devel libXcomposite-devel \
+              libXrandr-devel libXfixes-devel libXtst-devel libXinerama-devel \
+              xorg-x11-font-utils libtirpc-devel xkeyboard-config
+            # soft requirements
+            dnf --enablerepo="epel" -y install \
+              quilt xorg-x11-xkb-utils-devel
+            ;;
+          centos:7)
+             # basic packages
+            yum -y install \
+              autoconf automake gcc-c++ libtool make imake pkgconfig which
+            # imake deps
+            yum -y install \
+              xorg-x11-proto-devel zlib-devel
+            # X11 libraries deps
+            yum -y install \
+              libjpeg-devel expat-devel libpng-devel libxml2-devel pixman-devel \
+              libX11-devel libXext-devel libXpm-devel libXfont-devel \
+              libXdmcp-devel libXdamage-devel libXcomposite-devel \
+              libXrandr-devel libXfixes-devel libXtst-devel libXinerama-devel \
+              xorg-x11-font-utils libtirpc-devel xkeyboard-config
+            # soft requirements
+            yum -y install \
+              quilt xorg-x11-xkb-utils-devel
+            ;;
+          esac
+
+    - name: Checkout repository
+      uses: actions/checkout at v2
+
+    - name: Build nx-libs with ${{ matrix.cfg.cc-version }}
+      shell: sh
+      env:
+        DEBIAN_FRONTEND: noninteractive
+      run: |
+        case "${{ matrix.cfg.cc-version }}" in
+          gcc)
+            export CC=gcc
+            export CXX=g++
+            ;;
+          clang)
+            export CC=clang
+            export CXX=clang++
+            ;;
+        esac
+        case "${{ matrix.cfg.container }}" in
+          ubuntu*|debian*)
+            make
+            ;;
+          fedora*|centos*)
+            export IMAKE_DEFINES="-DUseTIRPC=YES"
+            make IMAKE_DEFINES="${IMAKE_DEFINES}"
+            ;;
+        esac

--
Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git


More information about the x2go-commits mailing list