Pakete lokal erstellen und testen - Deadline Cloud

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Pakete lokal erstellen und testen

Bevor Sie Pakete auf Amazon S3 veröffentlichen oder die CI/CD Automatisierung auf Ihrer Deadline Cloud-Farm einrichten, können Sie Conda-Pakete auf Ihrer Workstation mithilfe eines lokalen Dateisystemkanals erstellen und testen. Mit diesem Ansatz können Sie schnell lokal an Rezepten iterieren und Pakete verifizieren.

Der rattler-build publish Befehl erstellt ein Rezept, kopiert das resultierende Paket in einen Channel und indexiert den Channel in einem Schritt. Wenn Sie auf ein lokales Dateisystemverzeichnis abzielen, rattler-build wird der Kanal automatisch erstellt und initialisiert, falls das Verzeichnis nicht existiert.

Die folgenden Anweisungen verwenden das Blender 4.5-Beispielrezept aus dem Deadline Cloud-Beispiel-Repository auf. GitHub Sie können ein anderes Rezept aus dem Proben-Repository verwenden oder Ihr eigenes Rezept verwenden.

Voraussetzungen

Bevor Sie beginnen, installieren Sie die folgenden Tools auf Ihrer Workstation:

  • pixi — Ein Paketmanager, den Sie zum Installieren rattler-build und Testen von Paketen verwenden. Installiere Pixi aus pixi.sh.

  • rattler-build — Das Tool zur Paketerstellung, das von Deadline Cloud Conda Recipes verwendet wird. Führen Sie nach der Installation von Pixi den folgenden Befehl aus, um Pixi zu installieren. rattler-build

    pixi global install rattler-build
  • git — Erforderlich, um das Beispiel-Repository zu klonen. OnWindows, git for bietet Windows auch eine bash Shell, die einige der Windows Beispielrezepte benötigen.

Ein Paket erstellen und auf einem lokalen Channel veröffentlichen

In diesem Verfahren klonen Sie das Deadline Cloud-Beispiel-Repository und verwenden esrattler-build publish, um das Paket zu erstellen und in einem lokalen Dateisystemkanal zu veröffentlichen.

Um ein Paket zu erstellen und in einem lokalen Channel zu veröffentlichen
  1. Klonen Sie das Deadline Cloud-Beispiel-Repository.

    git clone https://github.com/aws-deadline/deadline-cloud-samples.git
  2. Wechseln Sie in das conda_recipes-Verzeichnis.

    cd deadline-cloud-samples/conda_recipes
  3. Führen Sie den folgenden Befehl aus, um das Blender 4.5-Rezept zu erstellen und das Paket in einem lokalen Channel-Verzeichnis zu veröffentlichen.

    Führen Sie macOS unter Linux und den folgenden Befehl aus.

    rattler-build publish blender-4.5/recipe/recipe.yaml \ --to file://$HOME/my-conda-channel

    Führen Sie auf Windows (cmd) den folgenden Befehl aus.

    rattler-build publish blender-4.5/recipe/recipe.yaml ^ --to file://%USERPROFILE%/my-conda-channel

    Der rattler-build publish Befehl führt die folgenden Aktionen aus:

    • Erstellt das Paket aus dem Rezept.

    • Erzeugt das Kanalverzeichnis, falls das Verzeichnis nicht existiert.

    • Kopiert die Paketdatei in den Channel.

    • Indiziert den Kanal, sodass Paketmanager das Paket finden können.

    Wenn Ihr Paketrezept von Paketen aus einem bestimmten Kanal abhängt, wie z. B. conda-forge, fügen Sie dem Befehl etwas -c conda-forge hinzu.

Um das Paket neu aufzubauen, nachdem Sie Änderungen am Rezept vorgenommen haben, fügen Sie hinzu, --build-number=+1 um die Build-Nummer automatisch zu erhöhen.

rattler-build publish blender-4.5/recipe/recipe.yaml \ --to file://$HOME/my-conda-channel \ --build-number=+1

Weitere Informationen dazu finden Sie in der rattler-build publish Dokumentation zur Veröffentlichung von Rattler-Build.

Builds debuggen

Wenn ein Build fehlschlägt, wird rattler-build das Build-Verzeichnis beibehalten, sodass Sie es untersuchen können. Führen Sie den folgenden Befehl aus, um eine interaktive Shell in der Build-Umgebung zu öffnen, in der alle Umgebungsvariablen so eingerichtet sind, wie sie während des Builds waren.

rattler-build debug shell

In der Debug-Shell können Sie Dateien ändern, einzelne Build-Befehle ausführen und Abhängigkeiten hinzufügen, um das Problem zu isolieren. Weitere Informationen finden Sie unter Debuggen von Builds in der Rattler-Build-Dokumentation.

Das Paket testen

Nachdem Sie das Paket erstellt und veröffentlicht haben, erstellen Sie ein temporäres Pixi-Projekt. Verwenden Sie das Projekt, um das Paket vom lokalen Kanal aus zu installieren und zu überprüfen, ob es ordnungsgemäß funktioniert.

Um das Paket zu testen
  1. Erstellen Sie ein temporäres Testverzeichnis und initialisieren Sie ein Pixi-Projekt mit dem lokalen Kanal.

    Führen Sie unter Linux und macOS die folgenden Befehle aus.

    mkdir package-test-env cd package-test-env pixi init --channel file://$HOME/my-conda-channel

    Führen Sie auf Windows (cmd) die folgenden Befehle aus.

    mkdir package-test-env cd package-test-env pixi init --channel file://%USERPROFILE%/my-conda-channel
  2. Fügen Sie das Paket dem Projekt hinzu.

    pixi add blender=4.5
  3. Stellen Sie sicher, dass das Paket ordnungsgemäß funktioniert.

    pixi run blender --version

Wenn Sie mit dem Paket zufrieden sind, können Sie das Paket in einem Amazon S3 S3-Conda-Kanal veröffentlichen, sodass Deadline Cloud-Mitarbeiter das Paket installieren können. Weitere Informationen finden Sie unter Pakete in einem S3-Conda-Kanal veröffentlichen.

Bereinigen

Nach dem Testen können Sie das Testprojekt und den lokalen Channel entfernen.

Um Testressourcen zu bereinigen
  1. Entfernen Sie das Testprojektverzeichnis.

    Führen Sie macOS unter Linux und den folgenden Befehl aus.

    rm -rf package-test-env

    Führen Sie auf Windows (cmd) den folgenden Befehl aus.

    rmdir /s /q package-test-env
  2. Entfernen Sie das lokale Conda-Kanalverzeichnis.

    Führen Sie unter Linux macOS und den folgenden Befehl aus.

    rm -rf $HOME/my-conda-channel

    Führen Sie auf Windows (cmd) den folgenden Befehl aus.

    rmdir /s /q %USERPROFILE%\my-conda-channel
  3. (Optional) Entfernen Sie das rattler-build Ausgabeverzeichnis, das die erstellte Paketdatei enthält.

    Führen Sie macOS unter Linux und den folgenden Befehl aus.

    rm -rf deadline-cloud-samples/conda_recipes/output

    Führen Sie auf Windows (cmd) den folgenden Befehl aus.

    rmdir /s /q deadline-cloud-samples\conda_recipes\output