Zwischenspeichern von Dateien zwischen Workflow-Läufen - Amazon CodeCatalyst

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.

Zwischenspeichern von Dateien zwischen Workflow-Läufen

Wenn das Zwischenspeichern von Dateien aktiviert ist, speichern die Build- und Testaktionen Dateien auf der Festplatte in einem Cache und stellen sie in nachfolgenden Workflow-Ausführungen aus diesem Cache wieder her. Durch das Zwischenspeichern wird die Latenz reduziert, die durch das Erstellen oder Herunterladen von Abhängigkeiten verursacht wird, die sich zwischen den Läufen nicht geändert haben. CodeCatalyst unterstützt auch Fallback-Caches, mit denen Teil-Caches wiederhergestellt werden können, die einige der benötigten Abhängigkeiten enthalten. Dies trägt dazu bei, die Latenzauswirkungen eines Cache-Fehlers zu reduzieren.

Anmerkung

Datei-Caching ist nur mit den CodeCatalyst Build - und Testaktionen von Amazon verfügbar und nur, wenn sie für die Verwendung des EC2Berechnungstyps konfiguriert sind.

Über das Zwischenspeichern von Dateien

Mit dem Datei-Caching können Sie Ihre Daten in mehreren Caches organisieren, auf die jeweils unter der Eigenschaft verwiesen wird. FileCaching Jeder Cache speichert ein Verzeichnis, das durch einen bestimmten Pfad angegeben ist. Das angegebene Verzeichnis wird bei future Workflow-Ausführungen wiederhergestellt. Das Folgende ist ein YAML Beispielausschnitt für das Caching mit mehreren Caches mit dem Namen und. cacheKey1 cacheKey2

Actions: BuildMyNpmApp: Identifier: aws/build@v1 Inputs: Sources: - WorkflowSource Configuration: Steps: - Run: npm install - Run: npm run test Caching: FileCaching: cacheKey1: Path: file1.txt RestoreKeys: - restoreKey1 cacheKey2: Path: /root/repository RestoreKeys: - restoreKey2 - restoreKey3
Anmerkung

CodeCatalyst verwendet mehrschichtiges Caching, das aus einem lokalen Cache und einem Remote-Cache besteht. Wenn bereitgestellte Flotten oder On-Demand-Computer auf einen Cache-Fehler in einem lokalen Cache stoßen, werden Abhängigkeiten aus einem Remote-Cache wiederhergestellt. Aus diesem Grund kann es bei einigen Aktionsläufen zu Latenzen beim Herunterladen eines Remote-Caches kommen.

CodeCatalyst wendet Cache-Zugriffsbeschränkungen an, um sicherzustellen, dass eine Aktion in einem Workflow die Caches eines anderen Workflows nicht ändern kann. Dadurch wird jeder Workflow vor anderen Workflows geschützt, die möglicherweise falsche Daten weiterleiten, die sich auf Builds oder Bereitstellungen auswirken. Einschränkungen werden durch Cache-Bereiche durchgesetzt, die Caches für jeden Workflow und jede Branch-Paarung isolieren. Beispielsweise feature-A hat ein Branch einen anderen Datei-Cache als ein Schwester-Branch. workflow-A workflow-A feature-B

Cachefehler treten auf, wenn ein Workflow nach einem bestimmten Dateicache sucht und ihn nicht finden kann. Dies kann mehrere Gründe haben, z. B. wenn ein neuer Branch erstellt wird oder wenn auf einen neuen Cache verwiesen wird, der noch nicht erstellt wurde. Es kann auch vorkommen, wenn ein Cache abläuft, was standardmäßig 14 Tage nach seiner letzten Verwendung der Fall ist. CodeCatalyst Unterstützt Fallback-Caches, um Cache-Fehlschläge zu vermeiden und die Rate von Cache-Treffern zu erhöhen. Fallback-Caches sind alternative Caches und bieten die Möglichkeit, partielle Caches wiederherzustellen, bei denen es sich um eine ältere Version eines Caches handeln kann. Ein Cache wird wiederhergestellt, indem zunächst unter dem Eigenschaftsnamen nach einem Treffer gesucht wird. FileCaching Falls er nicht gefunden wird, wird er ausgewertet. RestoreKeys Wenn sowohl für den Eigenschaftsnamen als auch für die gesamte Eigenschaft ein Cache-Fehler auftrittRestoreKeys, wird der Workflow weiter ausgeführt, da das Zwischenspeichern nach bestem Bemühen erfolgt und nicht garantiert werden kann.

Einen Cache erstellen

Sie können die folgenden Anweisungen verwenden, um Ihrem Workflow einen Cache hinzuzufügen.

Visual
Um einen Cache mit dem Visual Editor hinzuzufügen
  1. Öffnen Sie die CodeCatalyst Konsole unter https://codecatalyst.aws/.

  2. Wählen Sie Ihr Projekt.

  3. Wählen Sie im Navigationsbereich CI/CD und dann Workflows aus.

  4. Wählen Sie den Namen Ihres Workflows. Sie können nach dem Quell-Repository oder dem Branch-Namen filtern, in dem der Workflow definiert ist, oder nach Workflow-Namen oder -Status filtern.

  5. Wählen Sie Bearbeiten aus.

  6. Wählen Sie Visual.

  7. Wählen Sie im Workflow-Diagramm die Aktion aus, zu der Sie Ihren Cache hinzufügen möchten.

  8. Wählen Sie Konfiguration.

  9. Wählen Sie unter Datei-Caching — optional die Option Cache hinzufügen aus und geben Sie Informationen wie folgt in die Felder ein:

    Key (Schlüssel)

    Geben Sie den Namen Ihrer primären Cache-Eigenschaft an. Die Namen der Cache-Eigenschaften müssen innerhalb Ihres Workflows eindeutig sein. Jede Aktion kann bis zu fünf Einträge enthaltenFileCaching.

    Pfad

    Geben Sie den zugehörigen Pfad für Ihren Cache an.

    Schlüssel wiederherstellen — optional

    Geben Sie den Wiederherstellungsschlüssel an, der als Fallback verwendet werden soll, wenn die primäre Cache-Eigenschaft nicht gefunden werden kann. Die Namen der Wiederherstellungsschlüssel müssen innerhalb Ihres Workflows eindeutig sein. Jeder Cache kann bis zu fünf Einträge enthaltenRestoreKeys.

  10. (Optional) Wählen Sie „Validieren“, um den YAML Workflow-Code vor dem Commit zu überprüfen.

  11. Wählen Sie Commit, geben Sie eine Commit-Nachricht ein, und wählen Sie dann erneut Commit aus.

YAML
Um einen Cache mit dem YAML Editor hinzuzufügen
  1. Öffnen Sie die CodeCatalyst Konsole unter https://codecatalyst.aws/.

  2. Wählen Sie Ihr Projekt.

  3. Wählen Sie im Navigationsbereich CI/CD und dann Workflows aus.

  4. Wählen Sie den Namen Ihres Workflows. Sie können nach dem Quell-Repository oder dem Branch-Namen filtern, in dem der Workflow definiert ist, oder nach Workflow-Namen oder -Status filtern.

  5. Wählen Sie Bearbeiten aus.

  6. Wählen Sie YAML.

  7. Fügen Sie in einer Workflow-Aktion Code hinzu, der dem folgenden ähnelt:

    action-name: Configuration: Steps: ... Caching: FileCaching: key-name: Path: file-path # # Specify any additional fallback caches # RestoreKeys: # - restore-key
  8. (Optional) Wählen Sie „Validieren“, um den YAML Workflow-Code vor dem Commit zu überprüfen.

  9. Wählen Sie Commit, geben Sie eine Commit-Nachricht ein und wählen Sie erneut Commit.

Einschränkungen beim Zwischenspeichern von Dateien

Im Folgenden finden Sie die Einschränkungen für den Eigenschaftsnamen undRestoreKeys:

  • Namen müssen innerhalb eines Workflows eindeutig sein.

  • Namen sind auf alphanumerische Zeichen (A-Z, a-z, 0-9), Bindestriche (-) und Unterstriche (_) beschränkt.

  • Namen können bis zu 180 Zeichen lang sein.

  • Jede Aktion kann bis zu fünf Caches enthalten. FileCaching

  • Jeder Cache kann bis zu fünf Einträge enthalten. RestoreKeys

Im Folgenden sind die Einschränkungen für Pfade aufgeführt:

  • Sternchen (*) sind nicht erlaubt.

  • Pfade können bis zu 255 Zeichen lang sein.