例: Amazon S3 にファイルを発行する - Amazon CodeCatalyst

例: Amazon S3 にファイルを発行する

次のワークフローの例には、Amazon S3 発行アクションとビルドアクションが含まれています。このワークフローは、静的ドキュメントウェブサイトをビルドして、サイトがホストされる Amazon S3 に発行します。このワークフローは、連続して実行される次の構成要素で構成されます。

  • トリガー – ソースリポジトリに変更をプッシュすると、このトリガーによってワークフローが自動的に開始されます。トリガーについての詳細は、「トリガーを使用したワークフロー実行の自動的な開始」を参照してください。

  • ビルドアクション (BuildDocs) – トリガーされると、アクションは静的ドキュメントウェブサイト (mkdocs build) をビルドし、関連する HTML ファイルとサポートメタデータを MyDocsSite というアーティファクトに追加します。ビルドアクションの詳細については、「ワークフローを使用したビルド」を参照してください。

  • Amazon S3 発行アクション (PublishToS3) – ビルドアクションが完了すると、このアクションはアーティファクト MyDocsSite のサイトを、ホスティングのために Amazon S3 にコピーします。

注記

次のワークフロー例は説明を目的としており、追加の設定なしでは機能しません。

注記

次の YAML コードでは、必要に応じて Connections: セクションを省略できます。このセクションを省略する場合は、環境のデフォルトの IAM ロールフィールドで指定されたロールに、Amazon S3 発行アクションに必要なアクセス許可と信頼ポリシーが含まれていることを確認する必要があります。デフォルトの IAM ロールを使用して環境を設定する方法の詳細については、「環境を作成する」を参照してください。Amazon S3 発行アクションに必要なアクセス許可と信頼ポリシーの詳細については、「Amazon S3 発行」アクションの YAMLRole プロパティの説明を参照してください。

Name: codecatalyst-s3-publish-workflow SchemaVersion: 1.0 Triggers: - Type: PUSH Branches: - main Actions: BuildDocs: Identifier: aws/build@v1 Inputs: Sources: - WorkflowSource Configuration: Steps: - Run: echo BuildDocs started on `date` - Run: pip install --upgrade pip - Run: pip install mkdocs - Run: mkdocs build - Run: echo BuildDocs completed on `date` Outputs: Artifacts: - Name: MyDocsSite Files: - "site/**/*" PublishToS3: Identifier: aws/s3-publish@v1 Environment: Name: codecatalyst-s3-publish-environment Connections: - Name: codecatalyst-account-connection Role: codecatalyst-s3-publish-build-role Inputs: Sources: - WorkflowSource Artifacts: - MyDocsSite Configuration: DestinationBucketName: amzn-s3-demo-bucket SourcePath: /artifacts/PublishToS3/MyDocSite/site TargetPath: my/docs/site