diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8551b9eb54f6582ca867acb77486de5bc3d17aa7..6b888263bd83a9da2a3634686f5443d25fa5dab2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,9 +2,11 @@ variables: GIT_SUBMODULE_STRATEGY: recursive stages: -- build -- test -- publish + - build + - test + - ragdoc_build + - ragdoc_view + - publish before_script: - export GRADLE_USER_HOME=`pwd`/.gradle @@ -22,6 +24,7 @@ build: artifacts: paths: - "ragconnect.base/build/libs/ragconnect-*.jar" + - "src/gen" expire_in: 1 week test: @@ -32,10 +35,6 @@ test: alias: "mqtt" script: - ./gradlew --console=plain --no-daemon allTests - - ls -lh - - ls -lh ragconnect.tests - - ls -lh ragconnect.tests/build/test-results/ - - ls -lh ragconnect.tests/build/test-results/allTests artifacts: when: always reports: @@ -50,6 +49,39 @@ publish: only: - master +ragdoc_build: + image: + name: "git-st.inf.tu-dresden.de:4567/jastadd/ragdoc-builder" + entrypoint: [""] + stage: ragdoc_build + dependencies: + - build + script: + - JAVA_FILES=$(find src/ -name '*.java') + - /ragdoc-builder/start-builder.sh -excludeGenerated -d data/ $JAVA_FILES + artifacts: + paths: + - "data/" + +ragdoc_view: + image: + name: "git-st.inf.tu-dresden.de:4567/jastadd/ragdoc-view:relations" + entrypoint: [""] + stage: ragdoc_view + dependencies: + - ragdoc_build + script: + - DATA_DIR=$(pwd -P)/data + - mkdir -p pages/_static/ragdoc + - OUTPUT_DIR=$(pwd -P)/pages/_static/ragdoc + - cd /ragdoc-view + - ( cd src/ && rm -rf data && ln -s $DATA_DIR ) + - /ragdoc-view/build-view.sh --output-path=$OUTPUT_DIR + - ls -lah $OUTPUT_DIR + artifacts: + paths: + - "pages/_static/ragdoc" + pages: image: python:3.7-alpine stage: publish @@ -59,5 +91,3 @@ pages: artifacts: paths: - public - only: - - master diff --git a/pages/inner-workings.md b/pages/inner-workings.md index 9a244b9e72debabc3cdb138c7654fb66ce217f53..4f467a8f316584aa92a13dd11cf7812155960e4e 100644 --- a/pages/inner-workings.md +++ b/pages/inner-workings.md @@ -1,5 +1,7 @@ # Inner workings of `RagConnect` +Please see [API documentation](_static/ragdoc/index.html) for more details. +  `RagConnect` uses the [relast-preprocessor](https://git-st.inf.tu-dresden.de/jastadd/relast-preprocessor) to parse `.relast` grammar files. This results in an ASTNode of type `Program`.