Automatisieren Sie Paketerstellungen mit Deadline Cloud - 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.

Automatisieren Sie Paketerstellungen mit Deadline Cloud

Für CI/CD Workflows oder wenn Sie Pakete für mehrere Betriebssysteme erstellen müssen, können Sie eine Deadline Cloud-Warteschlange zur Paketerstellung erstellen. Die Warteschlangenpläne erstellen Jobs in Ihrer Flotte, die die Pakete erstellen und sie in Ihrem Amazon Simple Storage Service (Amazon S3) Conda-Kanal veröffentlichen. Dies vereinfacht die Verwaltung kontinuierlicher Paket-Builds für Softwareversionen in all Ihren erforderlichen Konfigurationen.

Sie können eine Warteschlange zur Paketerstellung mithilfe einer Vorlage AWS CloudFormation (CloudFormation) oder manuell über die Deadline Cloud-Konsole erstellen. Die CloudFormation Vorlage stellt eine komplette Farm mit einer Produktionswarteschlange und einer Warteschlange zur Paketerstellung bereit, die bereits konfiguriert sind. Wenn Sie die Warteschlange von der Konsole aus erstellen, haben Sie mehr Kontrolle über einzelne Einstellungen.

Erstellen Sie eine Warteschlange zum Erstellen von Paketen mit CloudFormation

Sie können eine CloudFormation Vorlage verwenden, um eine Deadline Cloud-Farm zu erstellen, die eine Warteschlange zur Paketerstellung enthält. Die Vorlage konfiguriert eine Produktionswarteschlange und eine Warteschlange zur Paketerstellung mit einem privaten Amazon S3 S3-Conda-Kanal.

Bevor Sie die Vorlage bereitstellen, erstellen Sie einen Amazon S3 S3-Bucket für Jobanhänge und Ihren Conda-Kanal. Sie können einen Bucket von der Amazon S3 S3-Konsole aus erstellen. Sie benötigen den Bucket-Namen, wenn Sie die Vorlage bereitstellen.

Um die CloudFormation Vorlage bereitzustellen
  1. Laden Sie die Vorlage deadline-cloud-starter-farm-template.yaml aus dem Deadline Cloud-Beispiel-Repository unter herunter. GitHub

  2. Wählen Sie in der CloudFormation KonsoleStack erstellen“ und dann „Mit neuen Ressourcen“ (Standard) aus.

  3. Wählen Sie die Option zum Hochladen einer Vorlagendatei und laden Sie dann die deadline-cloud-starter-farm-template.yaml Datei hoch.

  4. Geben Sie einen Namen für den Stack ein, z. B.StarterFarm, und geben Sie den Namen eines Amazon S3 S3-Buckets für Jobanhänge und den Conda-Kanal an.

  5. Folgen Sie den Schritten auf der CloudFormation Konsole, um die Stack-Erstellung abzuschließen.

Weitere Informationen zu den Vorlagenparametern und Anpassungsoptionen finden Sie in der README-Datei für die Starter-Farm im Deadline-Cloud-Beispiel-Repository unterGitHub.

Erstellen Sie von der Konsole aus eine Warteschlange zur Paketerstellung

Folgen Sie den Anweisungen unter Eine Warteschlange erstellen im Deadline Cloud-Benutzerhandbuch. Nehmen Sie die folgenden Änderungen vor:

  • Wählen Sie in Schritt 5 einen vorhandenen Amazon S3 S3-Bucket aus. Geben Sie einen Namen für den Stammordner an, z. B. DeadlineCloudPackageBuild damit Build-Artefakte von Ihren normalen Deadline Cloud-Anhängen getrennt bleiben.

  • In Schritt 6 können Sie die Warteschlange zur Paketerstellung einer vorhandenen Flotte zuordnen oder eine völlig neue Flotte erstellen, falls Ihre aktuelle Flotte nicht geeignet ist.

  • Erstellen Sie in Schritt 9 eine neue Servicerolle für Ihre Paketbau-Warteschlange. Sie werden die Berechtigungen ändern, um der Warteschlange die Berechtigungen zu geben, die für das Hochladen von Paketen und die Neuindizierung eines Conda-Kanals erforderlich sind.

Konfigurieren Sie die Berechtigungen für die Warteschlange zum Erstellen von Paketen

Damit die Warteschlange zur Paketerstellung auf das /Conda Präfix im Amazon S3 S3-Bucket der Warteschlange zugreifen kann, müssen Sie die Rolle der Warteschlange ändern, um ihr read/write Zugriff zu gewähren. Die Rolle benötigt die folgenden Berechtigungen, damit Paketerstellungsaufträge neue Pakete hochladen und den Channel neu indizieren können.

  • s3:GetObject

  • s3:PutObject

  • s3:ListBucket

  • s3:GetBucketLocation

  • s3:DeleteObject

  1. Öffnen Sie die Deadline Cloud-Konsole und navigieren Sie zur Seite mit den Warteschlangendetails für die Warteschlange zur Paketerstellung.

  2. Wählen Sie die Warteschlangendienst-Rolle und anschließend Warteschlange bearbeiten aus.

  3. Scrollen Sie zum Abschnitt Warteschlangendienstrolle und wählen Sie dann Diese Rolle in der IAM-Konsole anzeigen aus.

  4. Wählen Sie aus der Liste der Berechtigungsrichtlinien die AmazonDeadlineCloudQueuePolicyfür Ihre Warteschlange aus.

  5. Wählen Sie auf der Registerkarte „Berechtigungen“ die Option Bearbeiten aus.

  6. Fügen Sie der Warteschlangendienst-Rolle einen neuen Abschnitt wie den folgenden hinzu. Ersetzen Sie amzn-s3-demo-bucket und 111122223333 durch Ihren eigenen Bucket und Ihr eigenes Konto.

    { "Effect": "Allow", "Sid": "CustomCondaChannelReadWrite", "Action": [ "s3:GetObject", "s3:PutObject", "s3:DeleteObject", "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/Conda/*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "111122223333" } } },

Reichen Sie einen Auftrag zur Paketerstellung ein

Nachdem Sie eine Warteschlange zum Erstellen von Paketen erstellt und die Warteschlangenberechtigungen konfiguriert haben, können Sie Aufträge zum Erstellen von Conda-Paketen einreichen. Das submit-package-job Skript im Deadline Cloud-Beispiel-Repository unter GitHub sendet einen Build-Job für ein Conda-Rezept.

Sie benötigen Folgendes:

Um einen Auftrag zur Paketerstellung einzureichen
  1. Öffnen Sie die Deadline Cloud-Konfigurations-GUI und legen Sie die Standardfarm und -warteschlange auf Ihre Paketerstellungswarteschlange fest.

    deadline config gui
  2. Wechseln Sie in das conda_recipes Verzeichnis im Beispiel-Repository.

    cd deadline-cloud-samples/conda_recipes
  3. Führen Sie das submit-package-job Skript mit dem Rezeptverzeichnis aus. Das folgende Beispiel erstellt das Blender 4.5-Rezept.

    ./submit-package-job blender-4.5/

    Wenn für das Rezept ein Quellarchiv erforderlich ist, das Sie noch nicht heruntergeladen haben, enthält das Skript Anweisungen zum Herunterladen. Laden Sie das Archiv herunter und führen Sie das Skript erneut aus.

Nachdem Sie den Job eingereicht haben, können Sie den Deadline Cloud-Monitor verwenden, um den Fortschritt und Status des Jobs zu überprüfen.

Der Deadline Cloud-Monitor zeigt den Fortschritt und den Status eines Jobs, der ein Conda-Paket erstellt.

Der Monitor zeigt die beiden Schritte des Jobs: das Erstellen des Pakets und die anschließende Neuindizierung des Conda-Kanals. Wenn Sie mit der rechten Maustaste auf die Aufgabe für den Schritt zur Paketerstellung klicken und Protokolle anzeigen wählen, zeigt der Monitor die Sitzungsaktionen an:

  • Anlagen synchronisieren — Kopiert die Anlagen des Eingabeauftrags oder hängt ein virtuelles Dateisystem ein.

  • Starten Sie Conda — Die Aktion für die Warteschlangenumgebung. Der Build-Job spezifiziert keine Conda-Pakete, sodass diese Aktion schnell abgeschlossen wird.

  • Launch CondaBuild Env — Erstellt eine virtuelle Conda-Umgebung mit der Software, die zum Erstellen eines Conda-Pakets und zur Neuindizierung eines Kanals erforderlich ist.

  • Task run — Erstellt das Paket und lädt die Ergebnisse auf Amazon S3 hoch.

Während die Aktionen ausgeführt werden, senden sie Protokolle an Amazon CloudWatch (CloudWatch). Wenn ein Job abgeschlossen ist, wählen Sie Protokolle für alle Aufgaben anzeigen aus, um zusätzliche Protokolle über die Einrichtung und den Abbau der Umgebung einzusehen.