aboutsummaryrefslogtreecommitdiffstats
path: root/resources/tools/doc_gen/run_doc.sh
blob: 544554e93c202206e3cb447c76af8b05e2af0484 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/bin/bash

WORKING_DIR='tmp'
BUILD_DIR='_build'

# Clean-up when finished:
trap 'rm -rf ${WORKING_DIR}; exit' EXIT
trap 'rm -rf ${WORKING_DIR}; exit' ERR

# Remove the old build:
rm -rf ${BUILD_DIR} || true
rm -rf ${WORKING_DIR} || true

# Create working directories
mkdir ${BUILD_DIR}
mkdir --parents ${WORKING_DIR}/resources/libraries/python/
mkdir --parents ${WORKING_DIR}/resources/libraries/robot/
mkdir --parents ${WORKING_DIR}/tests/

# Copy the Sphinx source files:
cp -r src/* ${WORKING_DIR}/

# Copy the source files to be processed:
rsync -a --include '*/' --include '*.py' --exclude '*' ../../../resources/libraries/python/ ${WORKING_DIR}/resources/libraries/python/
cp ../../../resources/__init__.py ${WORKING_DIR}/resources/
cp ../../../resources/libraries/__init__.py ${WORKING_DIR}/resources/libraries/
rsync -a --include '*/' --include '*.robot' --exclude '*' ../../../resources/libraries/robot/ ${WORKING_DIR}/resources/libraries/robot/
rsync -a --include '*/' --include '*.robot' --exclude '*' ../../../tests/ ${WORKING_DIR}/tests/

# Create virtual environment:
virtualenv ${WORKING_DIR}/env
. ${WORKING_DIR}/env/bin/activate

# Install CSIT requirements:
pip install -r ../../../requirements.txt
# Install Sphinx:
pip install -r ${WORKING_DIR}/requirements.txt

export PYTHONPATH=`pwd`

# Generate rst files:
./gen_rst.py

# Remove all rst files from ./${WORKING_DIR}/env directory - we do not need them
find ./${WORKING_DIR}/env -type f -name '*.rst' | xargs rm -f

# Generate the documentation:
sphinx-build -v -b html ${WORKING_DIR} ${BUILD_DIR}/

find . -type d -name 'env' | xargs rm -rf

echo Creating csit.doc.tar.gz ...
tar -czvf ./csit.doc.tar.gz ${BUILD_DIR}