Add Windows Support for building doc (#1447)

Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
This commit is contained in:
Avgustin Marinov
2023-10-05 12:02:30 +03:00
committed by GitHub
parent 0aaf973b48
commit 499dab3f91
4 changed files with 52 additions and 9 deletions

38
docs/build-htmls.bat Normal file
View File

@@ -0,0 +1,38 @@
@echo off
@REM
@REM Copyright (c) 2023 Bosch.IO GmbH and others
@REM
@REM This program and the accompanying materials are made
@REM available under the terms of the Eclipse Public License 2.0
@REM which is available at https://www.eclipse.org/legal/epl-2.0/
@REM
@REM SPDX-License-Identifier: EPL-2.0
@REM
rem Checking for Redoc CLI and npm
call npx @redocly/cli --version 1> nul 2> nul
if ERRORLEVEL 1 (
echo [ERROR] Redoc CLI is not installed! Please make suer to install it before trying again.
exit 1
)
rem Execute the npx command
call npx @redocly/cli build-docs %cd%\content\rest-api\mgmt.yaml -o %cd%\content\rest-api\mgmt.html
if ERRORLEVEL 1 (
echo [ERROR] Failed to execute the Redoc CLI command form MGMT API.
exit 1
) else (
echo [INFO] Successfully executed the Redoc CLI command for MGMT API.
)
rem Execute the npx command
call npx @redocly/cli build-docs %cd%\content\rest-api\ddi.yaml -o %cd%\content\rest-api\ddi.html
if ERRORLEVEL 1 (
echo [ERROR] Failed to execute the Redoc CLI command form DDI API.
exit 1
) else (
echo [INFO] Successfully executed the Redoc CLI command for DDI API.
)

View File

@@ -10,7 +10,6 @@
#!/bin/bash #!/bin/bash
CURRENT_DIR=$(pwd) CURRENT_DIR=$(pwd)
# Checking for Redoc CLI and npm # Checking for Redoc CLI and npm
@@ -19,8 +18,6 @@ npx @redocly/cli --version > /dev/null 2>&1
if [ $? != 0 ]; then if [ $? != 0 ]; then
echo "[ERROR] Redoc CLI is not installed! Please make suer to install it before trying again." echo "[ERROR] Redoc CLI is not installed! Please make suer to install it before trying again."
exit 1 exit 1
else
echo "[INFO] Redoc CLI is already installed."
fi fi
# Execute the npx command # Execute the npx command

View File

@@ -10,7 +10,6 @@
@REM @REM
rem This script checks if 'hugo' is installed. Afterwards, the Hugo theme is downloaded. rem This script checks if 'hugo' is installed. Afterwards, the Hugo theme is downloaded.
hugo version hugo version
if ERRORLEVEL 1 ( if ERRORLEVEL 1 (
echo [ERROR] Please install Hugo first before proceeding. echo [ERROR] Please install Hugo first before proceeding.
@@ -20,12 +19,22 @@ if ERRORLEVEL 1 (
echo [INFO] echo [INFO]
echo [INFO] Install Hugo Theme echo [INFO] Install Hugo Theme
set HUGO_THEMES=themes\hugo-material-docs set HUGO_THEMES=themes\hugo-material-docs
set CSS_FILE=themes\hugo-material-docs\static\stylesheets\application.css
if not exist %HUGO_THEMES%\ ( if not exist %HUGO_THEMES%\ (
git submodule add --force https://github.com/digitalcraftsman/hugo-material-docs.git %HUGO_THEMES% git submodule add --force https://github.com/digitalcraftsman/hugo-material-docs.git %HUGO_THEMES%
echo [INFO] ... done echo [INFO] ... done
) else echo [INFO] ... theme already installed in: %HUGO_THEMES% ) else echo [INFO] ... theme already installed in: %HUGO_THEMES%
rem This script uses 'awk' to replace 1200px with 1500px in the application.css file from 'hugo'
if exist %CSS_FILE% (
then
powershell -Command "(gc %CSS_FILE%) -replace 'max-width:1200px', 'max-width:1500px' | Out-File -encoding ASCII %CSS_FILE%"
echo [INFO] CSS updated content successfully!
else
echo [WARN] CSS file not found!
fi
echo [INFO] echo [INFO]
echo [INFO] Launch the documentation locally by running 'mvn site' (or 'hugo server' in the docs directory), echo [INFO] Launch the documentation locally by running 'mvn site' (or 'hugo server' in the docs directory),
echo [INFO] and browse to 'http://localhost:{port}/hawkbit/'. echo [INFO] and browse to 'http://localhost:{port}/hawkbit/'.

View File

@@ -31,16 +31,15 @@ else
echo "[INFO] ... theme already installed in: ${HUGO_THEMES}" echo "[INFO] ... theme already installed in: ${HUGO_THEMES}"
fi fi
# This script uses 'awk' to replace 1200px with 1500px in the application.css file from 'hugo' # This script uses 'awk' to replace 1200px with 1500px in the application.css file from 'hugo'
if [ -f ${CSS_FILE} ] if [ -f ${CSS_FILE} ]
then then
awk '{gsub(/max-width:1200px/, "max-width:1500px"); print}' "${CSS_FILE}" > tmp && mv tmp "${CSS_FILE}" awk '{gsub(/max-width:1200px/, "max-width:1500px"); print}' "${CSS_FILE}" > tmp_hawkbit_doc && mv tmp_hawkbit_doc "${CSS_FILE}"
echo "[INFO] Updated CSS content successfully!" echo "[INFO] CSS updated content successfully!"
else else
echo "[ERROR] CSS file not found!" echo "[WARN] CSS file not found!"
fi fi
echo "[INFO] " echo "[INFO] "
echo "[INFO] Launch the documentation locally by running 'mvn site' (or 'hugo server' in the docs directory)," echo "[INFO] Launch the documentation locally by running 'mvn site' (or 'hugo server' in the docs directory),"
echo "[INFO] and browse to 'http://localhost:1313/hawkbit/'. " echo "[INFO] and browse to 'http://localhost:1313/hawkbit/'. "