Besom - Ein Besen aus Zweigen, die um einen Stock gebunden sind. Besen und BESOMS werden zum Schutz verwendet, um böse Geister abzuwehren und rituelle Räume zu reinigen. Außerdem ist Besom Scala SDK, mit dem Sie übrigens Pulumi -Programme in Scala schreiben können.

Mit BESOM SCALA SDK für Pulumi können Sie die volle Leistung der Pulumi -Infrastruktur als Codeplattform mithilfe der Scala -Programmiersprache nutzen. Die Scala -Unterstützung ist derzeit in der öffentlichen Beta .
Pulumi ist eine eingetragene Marke der Pulumi Corporation.
Erstellen Sie mit BESOM : Bereiten Sie eine einfache Anwendung in AWS, Azure, Google Cloud oder Kubernetes mit BESOM ein, um die gewünschte Infrastruktur mithilfe von Scala zu beschreiben.
BESOM DOCS : Erfahren Sie mehr über Besom-Konzepte, folgen Sie den Benutzer-Guides und konsultieren Sie die Referenzdokumentation.
Beispiele : Durchsuchen Sie Scala -Beispiele in vielen Wolken und Szenarien, einschließlich Containern, serverlos und Infrastruktur.
Installieren Sie Pulumi CLI :
Führen Sie die folgenden Ausführungen aus (siehe Anweisungen für zusätzliche Installationsoptionen), um die neueste Pulum -Version zu installieren.
curl -fsSL https://get.pulumi.com/ | shInstallieren Sie Scala CLI :
Um die neueste Scala -CLI -Version zu installieren, führen Sie die folgenden Ausführungen aus (Anweisungen für zusätzliche Installationsoptionen finden Sie in Installationsanweisungen):
curl -sSLf https://scala-cli.virtuslab.org/get | shInstallieren Sie das Scala -Sprach -Plugin in Pulumi :
Führen Sie Folgendes aus, um die neueste Veröffentlichung von Scala Language Plugin zu installieren:
pulumi plugin install language scala 0.3.2 --server github://api.github.com/VirtusLab/besomErstellen Sie ein neues Projekt :
Sie können an diesem Punkt Ihren BESOM -Code schreiben, aber um Ihnen zu helfen, BESOM mit Pulum -Vorlagen einzurichten.
Sie können mit dem pulumi new beginnen:
mkdir besom-demo && cd besom-demopulumi new https://github.com/VirtusLab/besom/tree/v0.3.2/templates/awsBereitstellung in der Cloud :
Führen Sie pulumi up um Ihren Code in die Cloud zu bringen:
pulumi up Dadurch werden alle Cloud -Ressourcen in Ihrem Code deklariert. Nehmen Sie einfach Änderungen an Ihrem Projekt vor, und nachfolgende pulumi up berechnen den minimalen Diff, um Ihre Änderungen bereitzustellen.
Verwenden Sie Ihr Programm :
Nachdem Ihr Code bereitgestellt wird, können Sie damit interagieren. Im obigen Beispiel finden wir den Namen des neu bereitgestellten S3 -Eimers:
pulumi stack output bucketNameZerstöre deine Ressourcen :
Nachdem Sie fertig sind, können Sie alle von Ihrem Programm erstellten Ressourcen entfernen:
pulumi destroy -yWeitere Informationen finden Sie unter virtuslab.github.io/besom, um viel mehr Informationen zu erhalten, einschließlich Tutorial, Beispiele sowie Architektur- und Programmiermodellkonzepte.
Pulumi.yaml ist Ihre Hauptpulum -Datei, die hier erklärt wird.
project.scala ist die Datei, die Ihre Abhängigkeiten für Scala-Cli enthält.
Main.scala ist der Einstiegspunkt für Ihre Infrastruktur als Code.
Ressourcen, die in Pulumi.run { ... } erstellt wurden, werden von Pulumi erstellt.
Ein einfaches Beispiel mit Scala CLI:
//> using scala " 3.3.1 "
//> using plugin " org.virtuslab::besom-compiler-plugin:0.3.2 "
//> using dep " org.virtuslab::besom-core:0.3.2 "
//> using dep " org.virtuslab::besom-aws:6.31.0-core.0.3 "
import besom . *
import besom . api . aws
@ main def run = Pulumi .run {
val bucket = aws.s3. Bucket ( " my-bucket " )
Stack .exports(
bucketName = bucket.bucket
)
}Notiz
Bitte achten Sie auf Ihre Abhängigkeiten, verwenden Sie nur org.virtuslab::besom-* und nicht com.pulumi:* . BESOM hängt nicht von Pulumi Java SDK ab , sondern eine völlig separate Implementierung.
Stack Ihres Programms aufgenommen werden.Context . Context ist als (implizit) im Pulumi.run -Block erhältlich, aber Sie können ihn auch in einer Ihrer Funktionen mit (using Context) explizit benötigen. Scala CLI ist das empfohlene Build -Tool, andere Tools werden ebenfalls unterstützt. BESOM erkennen Scala CLI- und SBT -Programme und kompilieren sie automatisch ohne weitere Konfiguration neu. Die unterstützten Versionen sind:
Andere Build-Tools werden über die runtime.options.binary unterstützt. Optionen.Binärkonfigurationsoption, die auf ein vorgefertigtes Glas in Pulumi.yaml , z. B. hinweisen:
name : myproject
runtime :
name : scala
options :
binary : target/myproject-1.0-SNAPSHOT-jar-with-dependencies.jar BESOM verwendet Scala-Cli für die Projektkompilierung und -ausführung.
Um die IDE -Unterstützung für ein Infrastrukturprojekt mit BESOM zu errichten, führen Sie diesen Befehl im Verzeichnis aus, in dem BESOM -Projektdateien vorhanden sind:
scala-cli setup-ide . Infolge dieses Befehls wird ein .bsp -Verzeichnis im Projektverzeichnis erstellt.
Bei der Eröffnung sollten sowohl die Intellij -Idee als auch Metalle das Projekt automatisch erkennen und die IDE entsprechend einrichten.
SBT, Gradle und Maven werden ebenfalls außerhalb des Boxs unterstützt, werden jedoch aufgrund einer langsameren Iterationsgeschwindigkeit nicht empfohlen . Die Verwendung von sbt , gradle oder mvn -Unterstützung wird für Situationen vorgeschlagen, in denen die verwaltete Infrastruktur zu einem bereits vorhandenen Projekt hinzugefügt wird, das SBT als Hauptbauwerkzeug verwendet.
IDE -Setup für sbt , gradle oder mvn arbeitet automatisch sowohl mit Intellij Idea als auch mit Metallen.
Mühle wird noch nicht unterstützt.
Besuchen Sie den Beitrag zum Beitrag.md, um Informationen zum Aufbau von BESOM aus der Quelle zu erstellen oder Verbesserungen zu beitragen.