Seite 1 von 2

Werkstattbericht neue opsi-Webgui

Verfasst: 12 Okt 2020, 11:42
von tb-killa
Durch Zufall sind wir auf den Beitrag "opsi Conf 2020: Werkstattbericht neue opsi-Webgui" (https://www.youtube.com/watch?v=X5xO2uD1KQo) gestoßen, erstmal ein großes Lob auch an Fr. Anna Sucher für den tollen Vortrag.

Bezüglich dieses neuen opsi-Webgui haben wir ein paar Fragen und Ideen:

# Allgemeine Fragen:
- Verfügbarkeit des opsi-Webgui als Test ?
- Verfügbarkeit des opsi-Webgui als First Release Official ?
- Kosten des opsi-Webgui ?
- Bereitstellung des Code per github Repo ?

# Technische Fragen:
- Nutzung des Django-Framework:

Wir sind ein großer Freund von Django und können diesen Weg nur befürworten.
Im Video wird von einem anderen User zwischen opsi-python / Django und der Kommunikation mit opsi gesprochen, können wir innerhalb von Django auch alternative Auth-Middleware nutzen wie z.B. ldap zwecks Rechteverwaltung innerhalb von opsi-Webgui ?

Wird es die Möglichkeit geben, eigene Django Apps integrieren zu können bzw. gibt es Ideen für ein mögliches Plugin-Konzept ?

#Rückfrage der technischen Natur hinter dem ganzen:
- Backend-Querys:
Wäre es nicht geschickter, opsi für die Konfiguration als Mysql Backend(oder ggf. zum Beispiel postgresql) standardmäßig freizugeben und den Weg per Django und Models über z.B. inspectdb und reines lesen zu nutzen ?
Vorteil wäre hier, es gibt einen schnellen Unterbau, die Datenbankfelder sind bekannt und da nur lesend gearbeitet wird, dürfte die Performance signifikant besser sein als z.B. per Django task queue oder ähnlichem die Daten per json rpc oder ähnlichem abzuholen.

Wir freuen uns auf Rückmeldung und Diskussionen, vor allem aber auch auf erste Livetests :)

Re: Werkstattbericht neue opsi-Webgui

Verfasst: 21 Okt 2020, 12:39
von sucher
Hi,

zunächst vielen Dank für das Lob :wink:

Wir sind fleißig an der Webgui am arbeiten. Allerdings ist uns die Qualität der Anwendung wichtiger als ein schnelles Release.
- Deswegen kann momentan keine Aussage zur Verfügbarkeit getroffen werden.
- Nach derzeitigem Stand soll die Webgui kostenfrei bereitgestellt werden
- und, wie der Code jeder unserer Anwendungen soll auch der der Webgui auf github verfügbar sein.

Nun zu den Technischen Fragen:
Die Webgui ist abgekoppelt vom opsi-backend. Das heißt, sie kann auf einer anderen Maschine (kein opsiserver) gehostet werden. Somit ist Django lediglich ein "ZwischenBackend", welches mit dem opsiserver über JSONRPC kommuniziert. Dafür ist es notwendig, dass der Benutzer sich beim opsi-server erfolgreich authentifiziert. Der derzeitige Stand ist, dass der Benutzer mit dem man sich anmeldet nicht der ist, der die Anfragen an das Backend sendet. Allerdings müssen beide Benutzer opsi-admin Rechte besitzen. Für die Rechteverwaltung innerhalb von opsi werden dann die user-roles verwendet (Eingeschränkter Zugriff auf Depots /Clientgruppen). Für die Authentifizierung über andere Provider, wie ldap, soll dann der Service zuständig sein, damit nicht alles doppelt/dreifach/.. implementiert werden muss.

Bezüglich der Datenbank: Das ist ein interessante Vorgehensweise. Allerdings sehe ich da Probleme bezüglich der Verwendung der python-opsi-Methoden. Momentan wird eine python-opsi Instanz benötigt, über die die Kommunikation zum opsiserver stattfindet (Verwendung von host_getObjects etc.. innerhalb von Django). Zusätzlich liefern (extra für die webgui) neue Backend Methoden der Gui lediglich die Daten, die auch benötigt werden. Für den Fall, dass man zwei (im besten Fall immer identische) Datenbanken hat, also "Djangodb" und "opsiserverdb" müsste man praktisch einen python-opsi Wrapper bauen, der bestimmt, welche Methoden auf die lokalen und welche auf die "echten" Daten zugreift (lesen / schreiben). Und ohne python-opsi würde man die gleichen Methoden ggf erneut implementieren müssen. Außerdem bin ich mir nicht sicher, ob sich die Performance-Einsparung durch die stetige Synchronisation der Datenbanken wieder ausgeglichen werden würde.

Bezüglich der Django Apps ist derzeit kein Plugin System geplant. Das Problem ist da eher, dass wir Django wirklich nur als Zwischenbackend verwenden um das echte Backend nach Daten zu Fragen (Die Django-Templates verwenden wir nicht) . Denkbar wäre auch die Konstellation, dass Django vollständig entfällt und das Frontend direkt das Backend nach Daten fragt. Frontend-seitig und eigentlich komplett getrennt von Django verwenden wir VueJS. Hier findet die meiste Logik/Arbeit/.. statt. Aber ich behalte mir die Idee im Hinterkopf, dass beispielsweise eigene Seiten/Komponenten o.ä. "customiziert" bzw. selbst entwickelt werden können.

Ich hoffe das beantwortet jetzt alle Fragen :D

Re: Werkstattbericht neue opsi-Webgui

Verfasst: 23 Okt 2020, 20:57
von tobias
Wie wärs mit der Veröffentlichung von Nightlies :)

Gibt doch eigentlich nichts besseres in der frühen Entwicklungsphase als direktes Feedback derjenigen, die später damit täglich arbeiten.

Natürlich ohne Garantie, Support und sonst was

Re: Werkstattbericht neue opsi-Webgui

Verfasst: 15 Nov 2020, 21:45
von tb-killa
Hallo Anna,

vielen Dank für deine Rückmeldung.

Bezüglich Django, würdet ihr hierzu vorab euern Code-(Anteil) bereitstellen damit wir in eigenen Projekten experimentieren können ?

Natürlich wären wir wie tobias bereits angemerkt auch an einem inoffiziellen "nightly" interessiert, vielleicht lässt sich dies auch oder alternativ zu meiner Anfrage realisieren ;) ?

Viele Grüße.

Re: Werkstattbericht neue opsi-Webgui

Verfasst: 17 Aug 2021, 15:06
von SirTux
Hallo,

gibt es etwas neues zur Webgui?

Viele Grüße,
Stefan

Re: Werkstattbericht neue opsi-Webgui

Verfasst: 18 Aug 2021, 15:15
von tobias
Das würde mich allerdings auch brennend interessieren ;)

Re: Werkstattbericht neue opsi-Webgui

Verfasst: 19 Nov 2021, 22:11
von tb-killa
Hallo liebes uib-Team.
Wie ich fleißig auf der Github-Repo für den opsiconfd sehe, wurde das python backend für die WebGUIvon django auf den nativen Teil portiert.
Soweit die API aufzeigt, waren die Basis-Themen abgebildet, auch eine mögliche "Addon" Api wurde vorbereitet, vielen Dank hierzu :)
Allerdings scheint ihr wohl nur das mysql backend dafür freigegeben zu haben, funktioniert die WebGUI nur mit der kostenpflichtigen Erweiterung Mysql oder wird das Mysql-Backend allgemein kostenlos freigegeben ?

Aber nun die doch spannendste Frage:
Wann gibt es die GUI bzw. können wir diese vorab testen ?
Viel spannender wäre natürlich eine Repo mit Sourcen ;)

Viele Grüße.

Re: Werkstattbericht neue opsi-Webgui

Verfasst: 27 Jun 2022, 17:35
von tb-killa
Hallo liebes uib Team,
Im experimental habe ich euer Addon gefunden: https://download.uib.de/4.2/experimenta ... fd-addons/
Aber als Voraussetzung wird eine Mysql Database als Backend erwartet, diese ist aktuell nur gegen Bezahlung vorhanden.
Plant ihr hier ggf. diese in der Free Variante freizugeben oder wird das ganze noch für das File-Backend (free) überarbeitet ?
Viele Grüße.

Re: Werkstattbericht neue opsi-Webgui

Verfasst: 29 Jun 2022, 10:40
von m.radtke
Moin,

aktuell ist es nicht geplant die Webgui für das File-Backend anzupassen.

Gruß
Mathias

Re: Werkstattbericht neue opsi-Webgui

Verfasst: 29 Jun 2022, 12:24
von tb-killa
Moin,
Ist geplant das MySQL Backend auf Free umzustellen?
Die Web-Gui ist eine erhebliche Verbesserung.
Oder ist dies nur für Leute mit bezahltem Backend geplant, das wäre aber schade und kam in dem Vorstellungsvideo (Youtube) nicht so rüber.
Wann ist geplant die Web-Gui ins Github hochzuladen?

Grüße