Im ERPNext-Universum gibt es diverse Apps. Das Frappe Framework ist sogar selbst eine App, die jedoch zwangsläufig immer installiert sein muss. Alle anderen Apps, beispielsweise ERPNext, bauen darauf auf. Wenn eine neue “Bench” erstellt wird, wird die App “frappe” automatisch mitinstalliert.
Neue Bench mit Frappe erstellen
bench init frappe-bench
Optional kann der Parameter --frappe-branch $BRANCH_NAME
verwendet werden, um die gewünschte Hauptversion zu spezifizieren:
bench init frappe-bench --frappe-branch version-13
Mit dem obigen Befehl erhalten wir eine sogenannte “Bench”, eine Verzeichnis, in dem sich unsere Konfiguration, Apps und Sites befinden:
tree -L 2 frappe-bench
# frappe-bench
# ├── apps
# │ └── frappe
# ├── config/
# ├── env/
# ├── logs/
# ├── patches.txt
# ├── Procfile
# └── sites/
ERPNext als erste App hinzufügen
Als Nächstes können wir die App “erpnext” zu unserer Bench hinzufügen:
cd frappe-bench/
bench get-app https://github.com/frappe/erpnext.git
Weil ERPNext so häufig installiert wird gibt es für diesen Befehl auch eine Kurzform:
bench get-app erpnext
Auch hier können wir wieder die gewünschte Hauptversion angeben:
bench get-app erpnext --branch version-13
Der Befehl bench get-app
klont die App aus einem Git-Repository, installiert sie und ihre Abhängigkeiten in der virtuellen Python-Umgebung und baut ihre JavaScript- und CSS-Dateien. Einzelne Schritte können aus verschiedenen Gründen fehlschlagen. Dann kann man diese manuell erneut ausführen:
# Abhängigkeiten installieren
bench setup requirements
# JavaScript- und CSS-Dateien bauen
bench build
Site erstellen und Apps installieren
Um die Apps nun nutzen zu können müssen wir zunächst eine neue Site erstellen:
bench new-site demo
Dort wird automatisch immer die App “frappe” installiert. Alle anderen Apps müssen explizit hinzugefügt werden:
bench --site demo install-app erpnext
Bei ERPNext ist zu beachten, dass diese App nur installiert werden kann, wenn der Setup Wizard (erstmaliges Einrichten der Site über den Webbrowser) noch nicht abgeschlossen wurde. Die meisten Apps lassen sich jedoch auch später noch auf eine bestehende Site nachinstallieren.