[json-glib/docs-template] ci: Use a separate template for the reference job
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [json-glib/docs-template] ci: Use a separate template for the reference job
- Date: Wed, 25 Aug 2021 17:38:40 +0000 (UTC)
commit 930e49ff7b57fda23d8125ce5d227a5d90555db3
Author: Emmanuele Bassi <ebassi gnome org>
Date: Wed Aug 25 18:12:51 2021 +0100
ci: Use a separate template for the reference job
We want to extract the API reference build to its own template, so we
can share it across projects using gi-docgen.
.gitlab-ci.yml | 60 ++++++++++++++++++++++++++--------------------------------
1 file changed, 27 insertions(+), 33 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 526d222..7b6b035 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -21,6 +21,28 @@ stages:
paths:
- "${CI_PROJECT_DIR}/_build/meson-logs"
+.gidocgen-build:
+ image: fedora:latest
+ before_script:
+ - export PATH="$HOME/.local/bin:$PATH"
+ - dnf install -y python3 python3-pip python3-wheel gobject-introspection-devel graphviz ninja-build
redhat-rpm-config
+ - dnf install -y ${PROJECT_DEPS}
+ - pip3 install --user meson==${MESON_VERSION} gi-docgen jinja2 Markdown markupsafe pygments toml
typogrify
+ script:
+ - meson setup ${MESON_EXTRA_FLAGS} ${DOCS_FLAGS} _docs .
+ - meson compile -C _docs
+ - |
+ pushd "_docs/${DOCS_PATH}" > /dev/null
+ tar cf ${CI_PROJECT_DIR}-${CI_COMMIT_SHORT_SHA}-docs.tar .
+ popd > /dev/null
+ - mv "_docs/${DOCS_PATH}/${CI_PROJECT_DIR}-${CI_COMMIT_SHORT_SHA}-docs.tar" .
+ artifacts:
+ when: always
+ name: 'Documentation'
+ expose_as: 'Download the API reference'
+ paths:
+ - ${CI_PROJECT_DIR}-${CI_COMMIT_SHORT_SHA}-docs.tar
+
fedora-x86_64:
extends: .build-default
stage: build
@@ -41,46 +63,18 @@ fedora-x86_64:
MESON_EXTRA_FLAGS: "--buildtype=debug --default-library=both -Dwerror=true -Dglib:werror=false
-Dintrospection=enabled"
reference:
- extends: .build-default
+ extends: .gidocgen-build
stage: docs
needs: []
variables:
- FEDORA_DEPS:
+ PROJECT_DEPS:
docbook-style-xsl
gcc
gettext
git
glib2-devel
- gobject-introspection-devel
- graphviz
- ninja-build
- python3
- python3-jinja2
- python3-markdown
- python3-markupsafe
- python3-pip
- python3-pygments
- python3-toml
- python3-typogrify
- python3-wheel
- redhat-rpm-config
libxslt
MESON_VERSION: "0.55.3"
- MESON_EXTRA_FLAGS: "-Dgtk_doc=enabled -Dman=true -Dintrospection=enabled"
- after_script:
- - mkdir _reference
- - mv _build/doc/json-glib-1.0/ _reference/
- artifacts:
- paths:
- - _reference
-
-pages:
- stage: deploy
- needs: ['reference']
- script:
- - mv _reference public
- artifacts:
- paths:
- - public
- only:
- - master
+ MESON_EXTRA_FLAGS: "-Dman=true -Dintrospection=enabled"
+ DOCS_FLAGS: -Dgtk_doc=enabled
+ DOCS_PATH: doc/json-glib-1.0
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]