[libsoup/fix-docs] ci: Install glib and libsoup2 documentation for website




commit 23c413fdcbf50f1a756ee75b1f33dbe77fe11f61
Author: Patrick Griffis <pgriffis igalia com>
Date:   Tue Aug 3 12:18:59 2021 -0500

    ci: Install glib and libsoup2 documentation for website

 .gitlab-ci.yml                      | 15 +++++++++------
 .gitlab-ci/Dockerfile               | 27 ++++++++++++++++++++++++---
 .gitlab-ci/index.html               | 11 +++++++++++
 .gitlab-ci/run-docker.sh            |  2 +-
 docs/reference/libsoup-3.0-docs.xml |  2 +-
 5 files changed, 46 insertions(+), 11 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 4f2ca416..50a9a4fe 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,4 +1,4 @@
-image: registry.gitlab.gnome.org/gnome/libsoup/master:v14
+image: registry.gitlab.gnome.org/gnome/libsoup/master:v15
 
 stages:
   - build
@@ -61,7 +61,8 @@ fedora-asan:
     ASAN_OPTIONS: fast_unwind_on_malloc=0
     SOUP_TEST_NO_IPV6: 1
   script:
-    - meson _build -Dauto-features=enabled -Db_sanitize=address -Dintrospection=disabled -Dvapi=disabled
+    # Introspection doesn't work when linking to libasan, the NTLM tests fail most likely due to unsafe 
usage of setenv()
+    - meson _build -Dauto-features=enabled -Db_sanitize=address -Dintrospection=disabled -Dvapi=disabled 
-Dntlm=disabled
     - meson test --no-suite autobahn-quick --no-suite autobahn -C _build --verbose --timeout-multiplier=10
   artifacts:
     when: on_failure
@@ -87,12 +88,14 @@ reference:
     DESTDIR: _install
   needs: []
   script:
-    - meson _build -Dgtk_doc=true
+    - meson _build --prefix=/usr -Dgtk_doc=true
     - ninja -C _build libsoup-3.0-doc
-    - ninja -C _build install
-    - mv _build/docs/reference/html/ _reference/
     - .gitlab-ci/check-docs.py
-    - gtkdoc-rebase --html-dir=_reference/ --online
+    - mkdir -p _reference/libsoup-3.0
+    - cp -R _build/docs/reference/html/* _reference/libsoup-3.0/
+    - cp -R /usr/share/gtk-doc/html/{glib,gio,gobject,libsoup-2.4} _reference
+    - cp .gitlab-ci/index.html _reference
+    - gtkdoc-rebase --relative --html-dir=./_reference/ --verbose
   artifacts:
     paths:
       - _build/docs/reference/libsoup-3.0-*.txt
diff --git a/.gitlab-ci/Dockerfile b/.gitlab-ci/Dockerfile
index 1b589497..71546c1d 100644
--- a/.gitlab-ci/Dockerfile
+++ b/.gitlab-ci/Dockerfile
@@ -2,6 +2,7 @@ FROM fedora:34
 
 RUN dnf update -y \
     && dnf install -y \
+                      autoconf-archive \
                       brotli-devel \
                       clang-analyzer \
                       'dnf-command(builddep)' \
@@ -25,19 +26,20 @@ RUN dnf update -y \
                       samba-winbind-clients \
                       sqlite-devel \
                       sysprof-devel \
+                      vala \
                       valgrind \
                       which \
-    && dnf builddep -y glib2 \
-    && dnf install --releasever=35 -y vala \
+    && dnf builddep -y glib2 vala \
     && dnf clean all \
     && python2.7 -m ensurepip \
     && pip2.7 install virtualenv autobahntestsuite \
     && pip3 install quart
 
+# We need glib 2.70
 RUN git clone https://gitlab.gnome.org/GNOME/glib.git \
     && pushd glib \
     && git checkout 2.69.1 \
-    && meson _build --prefix=/usr \
+    && meson _build --prefix=/usr -Dgtk_doc=true \
     && ninja -C _build install \
     && popd \
     && rm -rf glib
@@ -50,6 +52,25 @@ RUN git clone https://gitlab.gnome.org/GNOME/glib-networking.git \
     && popd \
     && rm -rf glib-networking
 
+# Fedora 34 has a really outdated vala
+RUN git clone https://gitlab.gnome.org/GNOME/vala.git \
+    && pushd vala \
+    && git checkout 0.50.10 \
+    && ./autogen.sh --prefix=/usr \
+    && make install \
+    && popd \
+    && rm -rf vala
+
+# We install the docs for libsoup2 to host (idk why libsoup-docs package doesn't work)
+RUN git clone https://gitlab.gnome.org/GNOME/libsoup.git \
+    && pushd libsoup \
+    && git checkout libsoup-2-74 \
+    && meson _build --prefix=/usr -Dgtk_doc=true \
+    && ninja -C _build libsoup-2.4-doc \
+    && cp -R _build/docs/reference/html /usr/share/gtk-doc/html/libsoup-2.4 \
+    && popd \
+    && rm -rf libsoup
+
 ARG HOST_USER_ID=5555
 ENV HOST_USER_ID ${HOST_USER_ID}
 RUN useradd -u $HOST_USER_ID -ms /bin/bash user
diff --git a/.gitlab-ci/index.html b/.gitlab-ci/index.html
new file mode 100644
index 00000000..14412f50
--- /dev/null
+++ b/.gitlab-ci/index.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta http-equiv="refresh" content="0; url='./libsoup-3.0/index.html'" />
+    <link rel="stylesheet" href="./libsoup-3.0/style.css" />
+  </head>
+  <body>
+    <ul><p><a href="https://libsoup.org/libsoup-3.0";>libsoup 3 documentation</a></p></ul>
+    <ul><p><a href="https://libsoup.org/libsoup-2.4";>libsoup 2 documentation</a></p></ul>
+  </body>
+</html>
diff --git a/.gitlab-ci/run-docker.sh b/.gitlab-ci/run-docker.sh
index f23c8151..882b35f4 100755
--- a/.gitlab-ci/run-docker.sh
+++ b/.gitlab-ci/run-docker.sh
@@ -2,7 +2,7 @@
 
 set -e
 
-TAG="registry.gitlab.gnome.org/gnome/libsoup/master:v14"
+TAG="registry.gitlab.gnome.org/gnome/libsoup/master:v15"
 
 SUDO_CMD="sudo"
 if docker -v |& grep -q podman; then
diff --git a/docs/reference/libsoup-3.0-docs.xml b/docs/reference/libsoup-3.0-docs.xml
index b1fa54d6..5c2fbaf6 100644
--- a/docs/reference/libsoup-3.0-docs.xml
+++ b/docs/reference/libsoup-3.0-docs.xml
@@ -6,7 +6,7 @@
     <title>libsoup Reference Manual</title>
     <releaseinfo>
       This documentation is for libsoup 3.0 which is in development.
-      You can find older versions online at <ulink role="online-location" 
url="https://developer.gnome.org/libsoup/stable/";>https://developer.gnome.org/libsoup/stable/</ulink>.
+      You can find older versions online at <ulink role="online-location" 
url="https://libsoup.org/libsoup-2.4/index.html";>https://libsoup.org/libsoup-2.4/</ulink>.
     </releaseinfo>
   </bookinfo>
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]