]> granicus.if.org Git - graphviz/commitdiff
add Fedora 35 testing in CI
authorMatthew Fernandez <matthew.fernandez@gmail.com>
Sun, 12 Dec 2021 18:57:52 +0000 (10:57 -0800)
committerMatthew Fernandez <matthew.fernandez@gmail.com>
Mon, 13 Dec 2021 15:52:38 +0000 (07:52 -0800)
Related to #2163.

.gitlab-ci.yml
ci/build.sh
ci/fedora35/Dockerfile [new file with mode: 0644]

index 3c8b3d3c49d1228ef0f364a261c9b198754b8f05..7ed80971889087fd21edb4f0d107dda45bbd1b16 100644 (file)
@@ -305,6 +305,18 @@ fedora34-build:
     variables:
       IMAGE: fedora34
 
+fedora35-build:
+    <<: *rpm_build_definition
+    needs:
+        - job: docker_build_fedora35
+          artifacts: false
+        - job: portable-source
+          artifacts: true
+    tags:
+        - linux
+    variables:
+      IMAGE: fedora35
+
 ubuntu18-04-build:
     <<: *deb_build_definition
     needs:
@@ -1085,6 +1097,18 @@ fedora34-test:
     variables:
       IMAGE: fedora34
 
+fedora35-test:
+    <<: *linux_test_definition
+    before_script:
+        - export build_system="autotools"
+    needs:
+        - job: "fedora35-build"
+          artifacts: true
+    tags:
+        - linux
+    variables:
+      IMAGE: fedora35
+
 macos-autotools-test:
     <<: *test_definition
     before_script:
@@ -1296,6 +1320,11 @@ docker_build_fedora34:
   variables:
     IMAGE: fedora34
 
+docker_build_fedora35:
+  <<: *docker_build_definition
+  variables:
+    IMAGE: fedora35
+
 docker_build_ubuntu-18.04:
   <<: *docker_build_definition
   variables:
@@ -1337,6 +1366,13 @@ docker_push_fedora34:
   needs:
     - docker_build_fedora34
 
+docker_push_fedora35:
+  <<: *docker_push_definition
+  variables:
+    IMAGE: fedora35
+  needs:
+    - docker_build_fedora35
+
 docker_push_ubuntu-18.04:
   <<: *docker_push_definition
   variables:
index 205400bb843b41a6bfd3ea377c19b2b4c7e3b37c..15b5d6c5712c400a1cb2f18437767b5c405226fc 100755 (executable)
@@ -17,6 +17,16 @@ else
     # remove trailing text after actual version
     VERSION_ID=$( uname -r | sed "s/\([0-9\.]*\).*/\1/")
 fi
+
+# FIXME: the build system sets redundant RPATHs which trigger rpmbuild errors on
+# Fedora ≥ 35, so suppress this rpmbuild check
+# https://gitlab.com/graphviz/graphviz/-/issues/2163
+if [ "${ID}" = "fedora" ]; then
+  if [ ${VERSION_ID} -ge 35 ]; then
+    export QA_RPATHS=$(( 0x0001 ))
+  fi
+fi
+
 META_DATA_DIR=Metadata/${ID}/${VERSION_ID}
 mkdir -p ${META_DATA_DIR}
 DIR=$(pwd)/Packages/${ID}/${VERSION_ID}
diff --git a/ci/fedora35/Dockerfile b/ci/fedora35/Dockerfile
new file mode 100644 (file)
index 0000000..31b7456
--- /dev/null
@@ -0,0 +1,82 @@
+FROM fedora:35
+
+COPY requirements.txt ./requirements.txt
+
+# Development tools
+RUN yum -y groupinstall 'Development Tools' \
+&& yum -y install rpm-build \
+bison \
+byacc \
+flex \
+# Centos build utilities
+libtool-ltdl-devel \
+libedit-devel \
+ksh \
+cmake \
+# Option xpat
+expat-devel \
+# Option glut
+freeglut-devel \
+# Option ann
+ann-devel \
+# Option gts
+gts-devel \
+# Option swig
+swig \
+# Command lefty
+# Command smyra
+# Command gvedit
+qt5-qtbase-devel \
+ncurses-devel \
+# Plugin library devil
+DevIL-devel \
+# Plugin library gd
+gd-devel \
+# Documentation and Plugin library ghostscipt
+ghostscript ghostscript-devel \
+# Plugin library gtk
+gtkglext-devel \
+# Plugin library lasi
+lasi-devel \
+# Plugin library pangocairo
+# Plugin library poppler
+poppler-glib-devel \
+poppler-qt5 \
+# Plugin library rsvg
+librsvg2-devel \
+# Plugin library webp
+# Language extension gv_sharp & gv_ruby
+# Language extension gv_go
+golang \
+gcc-go \
+# Language extension gv_guile
+guile-devel \
+# Language extension gv_java
+java-devel \
+# Language extension gv_lua
+lua-devel \
+# Language extension gv_ocaml
+ocaml \
+# Language extension gv_perl
+perl-ExtUtils-Embed \
+# Language extension gv_php
+php-devel \
+# Language extension gv_python3
+python3-devel \
+# Language extension gv_R
+R-devel \
+# Language extension gv_ruby
+ruby-devel \
+# Language extension gv_tcl
+# Required in redhat/graphviz.spec.fedora.in
+libXaw-devel \
+libglade2-devel \
+mono-core \
+# Test utilities
+python3-pip \
+python3-setuptools \
+# install Python dependencies
+&& python3 -m pip install --user --upgrade pip \
+&& python3 -m pip install --user --requirement requirements.txt \
+# Clean up
+&& yum clean all && rm -rf /var/cache/yum