Gibt es eine REST-API für Juju oder sind die einzigen Kommunikationsmöglichkeiten über die Juju-Befehlszeile und die Juju-Benutzeroberfläche? Ein Dienst kann mit dem Juju-Hauptagenten kommunizieren und beispielsweise eine neue Einheit hinzufügen oder einen anderen Dienst starten? Wie geht das richtig?
Antwort1
Die Juju-Clients (Befehlszeile und GUI) verwenden beide ein Websocket-Protokoll, um mit dem Juju-Controller (Hauptagent) zu kommunizieren.
Wir planen, Client-Bibliotheken bereitzustellen, die diese API gut verpacken und Ihnen die Entwicklung eigener Clients zur Steuerung von Juju ermöglichen.
Wenn Sie sich für das Wire-Format des Protokolls interessieren, ist dieses Dokument ein guter Ausgangspunkt:https://github.com/juju/juju/blob/master/doc/api.txt
Es sind bereits einige (inoffizielle) Bibliotheken verfügbar. Weitere Informationen hier:Was ist die beste Möglichkeit, einen Juju mit einem Zauber zu kontrollieren?