
Wenn ein wirklich unerfahrener Benutzer Juju verwendet und WordPress einsetzen möchte, wie soll er dann erkennen, dass für die Bereitstellung MySQL erforderlich ist?
Wenn Sie ein anderes Produkt xyz nehmen, das nicht so populär ist wie WordPress und für das über Google keine Artikel zur Bereitstellung verfügbar sind, dann muss der Benutzer in diesem Fall eine Kette von Aktivitäten auf dem Terminal durchlaufen, um das Produkt xyz schließlich zu verstehen und bereitzustellen.
Der Benutzer muss auf dem Terminal Folgendes tun:
- Charm get xyz oder wget xyz von irgendwoher
- CD xyz
- Katze config.yaml
- Lesen Sie die "erfordert"-Schnittstelle
- gehe zuhttp://charms.kapilt.com/interfaces
- Suchen Sie den Charm, der die Schnittstelle bereitstellt, z. B. Charm „abc“
- Charme bekommen ABC
- Juju Deploy ausführen usw.
Sie verstehen, was ich meine ... es sei denn, es gibt einen anderen Weg, den ich nicht kenne.
Wie erkennt man die Abhängigkeiten eines Charms?
Antwort1
Was Sie ansprechen, wird in Paketmanagern als „Abhängigkeitsauflöser“ bezeichnet.
Juju hat derzeit keines davon. Aber die Idee ist, dass es wie apt funktioniert. Wenn Sie eins ausführen, juju deploy wordpress
weiß es, dass Sie MySQL oder eine andere Datenbank benötigen, und gibt Ihnen einige Empfehlungen.
Das ist tatsächlich komplizierter, als es scheint, und deshalb haben wir es nicht. Nehmen wir in Bezug auf die Bereitstellung an, Sie stellen MediaWiki bereit und haben bereits 3 MySQL-Dienste bereitgestellt. Fordern wir Sie dann auf, einen neuen Dienst anzugeben, oder lassen wir Sie einfach entscheiden, ob Sie einen neuen bereitstellen möchten, oder geben Sie explizit an, welchen Sie verwenden möchten? Und das ist nur eine 1:1-Dienstbeziehung. Wenn der Stapel mehrere Ebenen hat, macht jede Ebene das komplizierter, was Sie eigentlich empfehlen möchten. (Aus diesem Grund ist es nicht in Juju enthalten. Wir müssen sorgfältig darüber nachdenken, wie dies funktionieren würde, bevor wir Annahmen in das Tool einbauen.)
Wir arbeiten jedoch auf zwei Arten daran, es zu verbessern:
- Charms sollten eine README-Datei haben, die erklärtwie man sie benutzt. Ein Charm könnte also in seinen Bereitstellungsanweisungen sagen „Ich brauche MySQL“, aber nicht alle Charms haben diese Anweisungen, einschließlich der Angaben, welche anderen Dienste erforderlich sind. Dies ist etwas, das wir bis 12.04 verbessern möchten.
- Wir arbeiten am Charm-Browser, um direkt auf der Webseite des Charms deutlicher zu machen, was ein Charm erfordert.
Hier ist der Fehlerbericht für die Spezifikation der Funktion: