プロジェクトの詳細のコンテキストオブジェクトへのアクセス - Amazon CodeCatalyst

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

プロジェクトの詳細のコンテキストオブジェクトへのアクセス

設計図の作成者は、合成中に設計図のプロジェクトからコンテキストにアクセスして、スペースやプロジェクト名、プロジェクトのソースリポジトリ内の既存のファイルなどの情報を取得できます。設計図が生成している再合成のフェーズなどの詳細を取得することもできます。例えば、コンテキストにアクセスして、祖先バンドルまたは提案されたバンドルを生成するために再合成するかどうかを確認できます。その後、既存のコードコンテキストを使用してリポジトリ内のコードを変換できます。例えば、独自の再合成戦略を記述して、特定のコード標準を設定できます。戦略は、小さなブループリントの blueprint.ts ファイルに追加することも、戦略用に別のファイルを作成することもできます。

次の例は、プロジェクトのコンテキストでファイルを検索し、ワークフロービルダーを設定し、特定のファイルに対してブループリントで提供される再合成戦略を設定する方法を示しています。

const contextFiles = this.context.project.src.findAll({ fileGlobs: ['**/package.json'], }); // const workflows = this.context.project.src.findAll({ // fileGlobs: ['**/.codecatalyst/**.yaml'], // }); const security = new WorkflowBuilder(this, { Name: 'security-workflow', }); new Workflow(this, repo, security.getDefinition()); repo.setResynthStrategies([ { identifier: 'force-security', globs: ['**/.codecatalyst/security-workflow.yaml'], strategy: MergeStrategies.alwaysUpdate, }, ]); for (const contextFile of contextFiles) { const packageObject = JSON.parse(contextFile.buffer.toString()); new SourceFile(internalRepo, contextFile.path, JSON.stringify({ ...packageObject, }, null, 2)); } }