17 Commits

6 changed files with 90 additions and 20 deletions

60
.drone.yml Normal file
View File

@ -0,0 +1,60 @@
---
kind: pipeline
type: docker
name: amd64-main
platform:
os: linux
arch: amd64
trigger:
branch:
- main
event:
- push
- pull_request
steps:
- name: submodules
image: alpine
environment:
SSH_KEY:
from_secret: SSH_KEY
commands:
- apk add openssh git
- mkdir -p /root/.ssh
- echo "$SSH_KEY" > /root/.ssh/id_rsa
- chmod 600 /root/.ssh/id_rsa
- echo "git.wtf-eg.de ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEjyrSgFgb+/ubyFDl3zvWSIfX+MLzRQUEtjdq1yeTd9" >> /root/.ssh/known_hosts
- chmod 600 /root/.ssh/known_hosts
- git submodule update --init --recursive
- name: build
image: sphinxdoc/sphinx-latexpdf:5.0.2
commands:
- apt-get update
- apt-get -y install texlive-lang-german rsync
- pip install -r requirements.txt
- make -j4 bundle
- name: upload
image: alpine
environment:
NC_USER:
from_secret: nextcloud_user
NC_PASSWORD:
from_secret: nextcloud_password
commands:
- apk add curl
- curl -X PUT -u $NC_USER:$NC_PASSWORD https://work.wtf-eg.de/remote.php/dav/files/$NC_USER/Member-Handbuch/Das%20Handbuch%20zur%20WTF%20eG.pdf -T bundle/rtfm-dashandbuchzurwtfeg.pdf
- curl -X PUT -u $NC_USER:$NC_PASSWORD https://work.wtf-eg.de/remote.php/dav/files/$NC_USER/Member-Handbuch/Das%20Handbuch%20zur%20WTF%20eG.epub -T bundle/RTFM-DasHandbuchzurWTFeG.epub
when:
branch:
- main
event:
- push
---
kind: signature
hmac: 84db7299d18047e70a324c4b059f8a2cdd13b497ac439264e4430a37e443c610
...

2
.gitmodules vendored
View File

@ -1,3 +1,3 @@
[submodule "handbuch"] [submodule "handbuch"]
path = source/handbuch path = source/handbuch
url = https://git.wtf-eg.de/wtf-eg/handbuch.git url = gitea@git.wtf-eg.de:wtf-eg/handbuch.git

View File

@ -31,7 +31,7 @@ sphinx:
rm build/singlehtml/_static/css/badge_only.css rm build/singlehtml/_static/css/badge_only.css
rm build/singlehtml/_static/epub_cover.png rm build/singlehtml/_static/epub_cover.png
rm build/singlehtml/_static/german-stemmer.js rm build/singlehtml/_static/german-stemmer.js
rm build/singlehtml/_static/jquery-3.5.1.js rm build/singlehtml/_static/jquery-3.6.0.js
rm build/singlehtml/_static/language_data.js rm build/singlehtml/_static/language_data.js
rm build/singlehtml/_static/searchtools.js rm build/singlehtml/_static/searchtools.js
rm build/singlehtml/_static/underscore-1.13.1.js rm build/singlehtml/_static/underscore-1.13.1.js

View File

@ -1,34 +1,44 @@
[![Build Status](https://drone.wtf-eg.de/api/badges/wtf-eg/handbuch-gen/status.svg)](https://drone.wtf-eg.de/wtf-eg/handbuch-gen)
# About # About
This repo contains the sphinx configuration and the wtf theme for sphinx for the generation of the WTF handbook. This project is an experiment of how to generate the WTF handbook in various output formats (HTML, epub and pdf) from the [git repository for the WTF handbook](https://git.wtf-eg.de/wtf-eg/handbuch). The handbuch sources are included as git submodule.
this project is an experiment of how to generate html, epub and pdf This repository contains the [Sphinx](https://www.sphinx-doc.org/) configuration and a Sphinx theme adapted for the [corporate identity of WTF cooperation](https://git.wtf-eg.de/ag_kommunikation/wtf_propaganda).
from the git repository for the WTF Handbook.
The handbuch sources are included as git submodule.
# sphinx html theme for wtf coop
the sphinx build uses an adapted sphinx theme for the wtf cooperatives CI.
# How to build # How to build
### python based - sphinx ### Checkout with submodules
First create a Python 3 virtual environment using the venv module included with Python 3. This repository accesses the required WTF handbook's content as a git submodule. Therefore, make sure to check out this repository including its submodule:
```
git clone --recurse-submodules https://git.wtf-eg.de/wtf-eg/handbuch-gen.git
```
1. Create a virtual Python environment: ```python3 -m venv venv``` ### Python based dependencies
2. Activate virtual Python environment: ```source venv/bin/activate```
3. install needed packages from ```requirements.txt```: ```pip install -r requirements.txt```
For generating the images from plantuml-sources it needs also [Plantuml](https://plantuml.com/). In order to generate the documentation, first create a Python 3 virtual environment using the `venv` module included in Python 3:
For pdf output the latex builder is used, so it needs also an installed latex and pdflatex.
1. Create a virtual Python environment in the directory `venv`: ```python3 -m venv venv```
1. Activate the virtual Python environment: ```source venv/bin/activate```
1. Install the packages listed in [requirements.txt](./requirements.txt) using `pip`: ```pip install -r requirements.txt```
### Other dependencies
For generating the images from PlantUML sources (`*.plantuml`), [PlantUML](https://plantuml.com/) is required.
For pdf output the LaTeX builder is used, so `latex` and `pdflatex` need to be installed.
### Running the document generation via make ### Running the document generation via make
The top level directory contains a Makefile, The top level directory contains a Makefile, for generation with all output formats use
for generation with all output formats use
````` `````
make bundle make bundle
````` `````
The output files of the final handbook can be found in the subfolder `./bundle`.
All generated intermediate artifacts and the final output files can be found in the `./build` subfolder.

View File

@ -24,7 +24,7 @@ copyright = '2021, diverse'
author = 'Autorenkollektiv' author = 'Autorenkollektiv'
# The full version, including alpha/beta/rc tags # The full version, including alpha/beta/rc tags
release = '0.1.0' release = '0.2.0'
# -- General configuration --------------------------------------------------- # -- General configuration ---------------------------------------------------