Commit 85d9d105 authored by Miguel Angel Reina Ortega's avatar Miguel Angel Reina Ortega
Browse files

Merge branch 'addDiffCR' into toMkdocs +

Integrating generation of nav spec into pipeline
parents 4e5fb541 a209e00a
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -38,6 +38,15 @@ Build Pandoc docker image:
      changes:
        - generateChangemarks/dockerfile.pandoc

Build Mike docker image:
  stage: build
  before_script: cd toMkdocs
  script: docker build --tag mike:$CI_COMMIT_BRANCH -f dockerfile.mike .
  rules:
    - if: $CI_COMMIT_BRANCH && $CI_PROJECT_NAME == "scripts"
      changes:
        - toMkdocs/dockerfile.mike

Upgrade index for pages:
  stage: upgrade
  before_script:
+20 −4
Original line number Diff line number Diff line
@@ -26,7 +26,7 @@ Word CR:
    - merge_requests
  before_script:
    - |
     curl "${CI_API_V4_URL}/projects/$TOOLS_SCRIPTS_PROJECT_ID/repository/files/generate_changemarks%2Esh/raw?ref=master" >> generate_changemarks.sh
     curl "${CI_API_V4_URL}/projects/$TOOLS_SCRIPTS_PROJECT_ID/repository/files/generate_changemarks%2Esh/raw?ref=toMkdocs" >> generate_changemarks.sh
    - chmod +x generate_changemarks.sh
    - |
     curl "${CI_API_V4_URL}/projects/$TOOLS_SCRIPTS_PROJECT_ID/repository/files/onem2m_delimiter_start%2Edocx/raw?ref=master" >> onem2m_delimiter_start.docx
@@ -91,19 +91,35 @@ pages:
        TAG_NAME: "upgrade"
  before_script:
    - |
     curl "${CI_API_V4_URL}/projects/$TOOLS_SCRIPTS_PROJECT_ID/repository/files/publish_on_pages%2Esh/raw?ref=master" >> publish_on_pages.sh
     curl "${CI_API_V4_URL}/projects/$TOOLS_SCRIPTS_PROJECT_ID/repository/files/publish_on_pages%2Esh/raw?ref=toMkdocs" >> publish_on_pages.sh
    - chmod +x publish_on_pages.sh
    - |
     curl "${CI_API_V4_URL}/projects/$TOOLS_SCRIPTS_PROJECT_ID/repository/files/updateIndex%2Epy/raw?ref=master" >> updateIndex.py
     curl "${CI_API_V4_URL}/projects/$TOOLS_SCRIPTS_PROJECT_ID/repository/files/updateIndex%2Epy/raw?ref=toMkdocs" >> updateIndex.py
    - |
     curl "${CI_API_V4_URL}/projects/$TOOLS_SCRIPTS_PROJECT_ID/repository/files/index%2Ehtml/raw?ref=master" >> index.html
    - |
     export SPEC_NAME=$(ls | grep T*.md | cut -d'.' -f1)
    - |
     sed -i 's/PROJECT/'${CI_PROJECT_NAME^^}'/g' index.html
    - |
     curl "${CI_API_V4_URL}/projects/$TOOLS_SCRIPTS_PROJECT_ID/repository/files/toMkdocs/images/favicon%2Eico/raw?ref=toMkdocs" >> favicon.html
    - mkdir -p docs/images && mv favicon.html docs/images/
    - |
     curl "${CI_API_V4_URL}/projects/$TOOLS_SCRIPTS_PROJECT_ID/repository/files/images/onem2m%2Epng/raw?ref=toMkdocs" >> onem2m.png
    - mv onem2m.png docs/images/
    - |
     curl "${CI_API_V4_URL}/projects/$TOOLS_SCRIPTS_PROJECT_ID/repository/files/images/onem2m_sq%2Epng/raw?ref=toMkdocs" >> onem2m_sq.png
    - mv onem2m_sq.png docs/images/
    - |
     curl "${CI_API_V4_URL}/projects/$TOOLS_SCRIPTS_PROJECT_ID/repository/files/stylesheets/extra%2Ecss/raw?ref=toMkdocs" >> extra.css
    - mkdir -p docs/stylesheets && mv extra.css docs/stylesheets/
    - |
     curl "${CI_API_V4_URL}/projects/$TOOLS_SCRIPTS_PROJECT_ID/repository/files/mkdocs%2Eyml/raw?ref=toMkdocs" >> mkdocs.yml
    - |
     curl "${CI_API_V4_URL}/projects/$TOOLS_SCRIPTS_PROJECT_ID/repository/files/toMkdocs/toMkdocs%2Epy/raw?ref=toMkdocs" >> toMkdocs.py
  script:
    - echo 'Publishing on pages'
    -  ./publish_on_pages.sh updateIndex.py $CI_PAGES_URL ${CI_PROJECT_NAME} $TAG_NAME index.html $CLEAN_WEB_PAGES $SPEC_NAME;
    - ./publish_on_pages.sh updateIndex.py $CI_PAGES_URL ${CI_PROJECT_NAME} $TAG_NAME index.html $CLEAN_WEB_PAGES $SPEC_NAME toMkdocs.py;
  artifacts:
    paths:
      - public
 No newline at end of file
+6 −0
Original line number Diff line number Diff line
@@ -44,5 +44,11 @@ for i in docs/*.docx ; do
    DOCUMENT_NAME=$(echo $i | cut -d'/' -f 2)
	docker container run --rm -v $(pwd):/tmp/ -u $(id -u):$(id -g) "$GENERATE_CHANGEMARKS_DOCKER_IMAGE" addTrackedChanges -o "/tmp/docs/$DOCUMENT_NAME" "/tmp/$i" "$HOST_URL" "$2" "$3"
done
for filename in docs/*.docx; do
    mv $filename ${filename%.*}_Word.docx; done;
    #mv "$filename" "prefix_${filename}"; done;

echo "\n------ Generating change marks --------"
docker container run --rm -v $(pwd):/tmp/ -u $(id -u):$(id -g) -w "/tmp" "$FORGELIB_DOCKER_IMAGE" forgelib-changedocs -vv --combine --diffs --preprocessor onem2m --outPath=docs/ --startdelimiter "$4" --enddelimiter "$5" --coversheet "$6" "$HOST_URL" "$2" "$3"

exit 0
+40 −7
Original line number Diff line number Diff line
#!/bin/bash

DOCKER_IMAGE=logiqx/python-bs4:3.9-slim
MIKE_DOCKER_IMAGE=mike:master

echo "\n------ Checking for docker image --------"
docker pull "$DOCKER_IMAGE"
@@ -23,29 +24,61 @@ fi
set -e

echo "------ Get the previous GitLab Pages content --------"
# Move all folders except the "baselines" folder if baselines folder exists
if [ -d "public/baselines" ]; then
    echo "Baselines already moved to baselines/";
else
    mkdir -p "public/baselines"
    for folder in public/*; do
        if [ -d "$folder" ] && [ "$(basename "$folder")" != "baselines" ]; then
            mv "$folder" "public/baselines/"
            echo "Moved $(basename "$folder") to public/baselines"
        fi
    done
    # Move index.html with new location
    mv "public/index.html" "public/baselines/"

fi

echo "------ Add/update content --------"
if [ $4 == 'upgrade' ]; then
    echo 'Upgrading index.html...'
    docker run --rm -v $(pwd):/tmp -w /tmp "$DOCKER_IMAGE" python3 $1 -u "$7_$4" "$4/$7_$4.docx" "$5"
elif [ $6 == 'true' ]; then
    echo 'Removing all web pages content...'
	rm -r public/*;
	mkdir -p "public/$4"
    echo 'Removing all baselines ...'
	rm -r public/baselines/*;
	mkdir -p "public/baselines/$4"
    ls public/
	cp -r -f "$7_$4.docx" public/$4
	cp -r -f "$7_$4.docx" public/baselines/$4
    docker run --rm -v $(pwd):/tmp -w /tmp "$DOCKER_IMAGE" python3 $1 "$7_$4" "$4/$7_$4.docx" "$5"
elif [ $6 == 'false' ]; then
	mkdir -p "public/$4"
	mkdir -p "public/baselines/$4"
    ls public/
	cp -r -f "$7_$4.docx" public/$4
	cp -r -f "$7_$4.docx" public/baselines/$4
    docker run --rm -v $(pwd):/tmp -w /tmp "$DOCKER_IMAGE" python3 $1 "$7_$4" "$4/$7_$4.docx" "$5"
else
    echo 'Removing entry for ' $6
    rm -r -f public/$6
    rm -r -f public/baselines/$6
    docker run --rm -v $(pwd):/tmp -w /tmp "$DOCKER_IMAGE" python3 $1 -re "$7_$4" "$4/$7_$4.docx" "$5"
fi

####### GENERATE NAV SPEC #######
echo "------ Generate input for mkdocs --------"
docker run --rm -u $(id -u):$(id -g) -v $(pwd):/tmp -w /tmp "$MIKE_DOCKER_IMAGE" python3 $8 --title $3 "./$7.md"

echo "------ Move to docs folder --------"
ls
mv $3/ docs/
cat _nav.yml >> mkdocs.yml

echo "------ Move to docs folder --------"
docker run --rm -u $(id -u):$(id -g) -v $(pwd):/tmp -w /tmp "$MIKE_DOCKER_IMAGE" mike deploy -u $4 latest
docker run --rm -u $(id -u):$(id -g) -v $(pwd):/tmp -w /tmp "$IKE_DOCKER_IMAGE" mike set-default latest

mv site/ public/

###########################

echo "------ Zip the content and publish the zip again ------"
zip -r "content.zip" "public"
mv "content.zip" "public/"
+5 −0
Original line number Diff line number Diff line
FROM python:3.9-slim-bullseye

RUN pip install rich mkdocs-material mkdocs-rss-plugin mike && \
    apt-get update &&\
    apt-get install -y git
Loading