bookbuild/README.md

63 lines
1.6 KiB
Markdown

# Build script for my book projects
## Dependencies
* python>=3.x
* python-poetry>=1.1.0
## Installation
Im lokalen `bookbuild`-Repository (Development) **fkt. nicht: der Befehl installiert nur die dependencies, nicht bookbuild selbst**:
```bash
$ poetry build
$ poetry install
```
In einem `book`-Repository und nur auf dieses begrenzt:
```bash
$ python -m venv .venv
$ source .venv/bin/activate
$ cd ~/path/to/bookbuild
$ poetry build
$ poetry install # alternativ: pip install dist/bookbuild-x.y.z-py3-none-any.whl
```
Systemweit (fkt. noch nicht):
```bash
$ pip install -e git+https://git.unterdemradar.de/tobias/bookbuild#egg=bookbuild
```
## Programm ausführen
Mit `poetry run bookbuild` kann man das Programm ausführen, ohne die venv vorher aktivieren zu müssen (das erledigt poetry im Hintergrund).
Manchmal passiert es, dass der Befehl immer nur die installierte Version ausführt und nicht den aktuellen Code aus dem Repository. In diesem Fall muss man `poetry update` ausführen, dann sollte es wieder gehen
Im Zweifel kann man den aktuellen Code auch direkt ausführen, indem man das `src/`-Verzeichnis mit einbezieht. Dazu wechselt man entweder ins Verzeichnis:
```bash
$ # mit poetry
$ cd src/
$ poetry run bookbuild # oder poetry run python -m bookbuild
$ # ohne poetry
$ . .venv/bin/activate
$ cd src/
$ python -m bookbuild
```
Oder man gibt das Verzeichnis als Modulpfad mit an:
```bash
$ # mit poetry
$ poetry run python -m src.bookbuild # was nicht geht: poetry run src.bookbuild
$ # ohne poetry
$ . .venv/bin/activate
$ python -m src.bookbuild
```