Das Werkzeug zur Erzeugung dynamischer Klassendiagramme von Python -Paketen, um ihre Entwicklung und Wartung zu erleichtern.
Motivation :
Pyarger kann als Teil des Github -Workflows ausgeführt werden.
| Attribut | Beschreibung | Erforderlich | Standard |
|---|---|---|---|
input | Verzeichnis mit dem Paketquellcode | WAHR | |
output | Verzeichnis zum Speichern der generierten HTML -Datei | FALSCH | .pyarch/output |
title | Benutzerdefinierte HTML -Titel | FALSCH | Python package architecture |
header | Benutzerdefinierte HTML -Header | FALSCH | Python package architecture |
footer | Benutzerdefinierte HTML -Fußzeile | FALSCH | <p style="font-size:15px">Built with ❤️ by <a href="https://www.dkisler.com" target=_blank>Dmitry Kisler - dkisler.com</a></p> |
output : Pfad zur generierten HTML -Datei.Der folgende GitHub -Workflow kann verwendet werden, um das Paketarchitekturdiagramm zu generieren und mit Github -Seiten zu veröffentlichen.
name : " Pyarch Pages "
on :
workflow_dispatch :
permissions :
contents : read
pages : write
id-token : write
concurrency :
group : " pages "
cancel-in-progress : false
jobs :
pyarch-pages :
runs-on : ubuntu-20.04
steps :
# assumption: the workflow is running in the python package repo
- uses : actions/checkout@v3
with :
fetch-depth : 0
- name : Generate HTML
uses : kislerdm/[email protected]
with :
# Change to the path with the package's source files
input : src
title : " Architecture of my package "
header : " Architecture of my package "
output : public
- name : Setup Pages
uses : actions/configure-pages@v3
- name : Upload artifact
uses : actions/upload-pages-artifact@v2
with :
path : ' public '
- name : Deploy to GitHub Pages
id : deployment
uses : actions/deploy-pages@v2 Voraussetzungen :
Schritte
/usr/local/bin pyarch --version
Beachten Sie , dass Sudo -Berechtigungen erforderlich sind. Alternativ kann das Skript ohne den step 2 ausgeführt werden:
python3 pyarch --version
Demo
Hinweis Curl ist erforderlich.
sudo curl -SLo /usr/local/bin/pyarch https://github.com/kislerdm/pyarch/releases/download/v0.0.1/pyarch &&
pyarch --version
Ausgabe:
version: 0.0.1
Voraussetzungen :
Befolgen Sie die Schritte, um die Webseite mit dynamischen Architekturdiagrammen von Sklearn zu generieren:
mkdir sklearn-diagram && cd sklearn-diagram
git clone [email protected]:scikit-learn/scikit-learn.git code
pyreverse -Akmy -o puml -d . --ignore=test,tests code/sklearn
pyarch -i . -o . -v --title="sklearn architecture" --header="sklearn architecture"
Es wird erwartet, dass das Verzeichnis die folgende Struktur hat:
.
├── code
├── classes.puml
├── packages.puml
└── index.html
Öffnen Sie index.html mit einem Webbrowser:

Das Projekt wird unter der MIT -Lizenz verteilt - nutzen Sie es so, wie Sie es so wollen.
Bitte öffnen Sie das GitHub -Problem und/oder PR mit einem Änderungsvorschlag zur Zusammenarbeit.