翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ワークフロー実行間のファイルのキャッシュ
ファイルキャッシュを有効にすると、ビルドアクションとテストアクションはディスク上のファイルをキャッシュに保存し、後続のワークフロー実行でそのキャッシュから復元します。キャッシュは、実行間で変更されていない依存関係を構築またはダウンロードすることによるレイテンシーを低減します。 はフォールバックキャッシュ CodeCatalyst もサポートしています。これは、必要な依存関係の一部を含む部分的なキャッシュを復元するために使用できます。これにより、キャッシュミスによるレイテンシーへの影響を軽減できます。
注記
ファイルキャッシュは、Amazon の CodeCatalyst ビルドアクションとテストアクションでのみ使用でき、EC2コンピューティングタイプ を使用するように設定されている場合にのみ使用できます。
ファイルキャッシュについて
ファイルキャッシュを使用すると、データを複数のキャッシュに整理できます。各キャッシュは FileCaching
プロパティで参照されます。各キャッシュには、指定されたパスで指定されたディレクトリが保存されます。指定されたディレクトリは、今後のワークフロー実行で復元されます。以下は、 cacheKey1
および YAML という名前の複数のキャッシュでキャッシュするためのスニペットの例です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
注記
CodeCatalyst は、ローカルキャッシュとリモートキャッシュで構成される多層キャッシュを使用します。プロビジョニングされたフリートまたはオンデマンドマシンがローカルキャッシュでキャッシュミスに遭遇すると、依存関係はリモートキャッシュから復元されます。その結果、一部のアクションの実行では、リモートキャッシュのダウンロードによるレイテンシーが発生する可能性があります。
CodeCatalyst はキャッシュアクセス制限を適用して、あるワークフローのアクションが別のワークフローのキャッシュを変更できないようにします。これにより、ビルドやデプロイに影響する誤ったデータをプッシュする可能性のある他のユーザーから各ワークフローが保護されます。キャッシュスコープでは、すべてのワークフローとブランチのペアリングにキャッシュを分離する制限が適用されます。例えば、 ブランチworkflow-A
のファイルキャッシュfeature-A
は、兄弟ブランチ workflow-A
のファイルキャッシュとは異なりますfeature-B
。
キャッシュミスは、ワークフローが指定されたファイルキャッシュを検索して見つけられない場合に発生します。これは、新しいブランチが作成されたときや、新しいキャッシュが参照され、まだ作成されていないときなど、複数の理由で発生する可能性があります。また、キャッシュの有効期限が切れたときに発生することもあります。デフォルトでは、キャッシュは最後に使用された日から 14 日後に発生します。キャッシュミスを軽減し、キャッシュヒット率を高めるために、 はフォールバックキャッシュ CodeCatalyst をサポートします。フォールバックキャッシュは代替キャッシュであり、キャッシュの古いバージョンである可能性のある部分キャッシュを復元する機会を提供します。キャッシュは、最初に でFileCaching
プロパティ名に一致するものを検索することで復元され、見つからない場合は が評価されますRestoreKeys
。プロパティ名とすべての の両方にキャッシュミスがある場合RestoreKeys
、キャッシュはベストエフォートであり、保証されないため、ワークフローは引き続き実行されます。
キャッシュの作成
以下の手順を使用して、ワークフローにキャッシュを追加できます。
ファイルキャッシュの制約
プロパティ名 と の制約は次のとおりですRestoreKeys
。
-
名前はワークフロー内で一意である必要があります。
-
名前は英数字 (A~Z、a~z、0~9)、ハイフン (-)、アンダースコア (_) に制限されています。
-
名前は最大 180 文字です。
-
各アクションには、 に最大 5 つのキャッシュを含めることができます
FileCaching
。 -
各キャッシュには、 に最大 5 つのエントリを含めることができます
RestoreKeys
。
パスの制約は次のとおりです。
-
アスタリスク (*) は使用できません。
-
パスは最大 255 文字です。