📝
Amplify Hosting のビルド時にソースを S3 バケットにアップロードしてみた
ビルドフェーズでアップロードしてみました。
前提
- Amplify Hosting のソースリポジトリは CodeCommit
- CodeCommit には index.html のみをプッシュ済み
- Amplify Hosting の IAM ロールには AdministratorAccess 権限を付与
- S3 バケットはデフォルト設定で作成済み
ビルドの設定
amplify.yml
version: 1
frontend:
phases:
build:
commands:
- "TZ=Asia/Tokyo aws s3 sync . s3://my-bucket-name/$(TZ=Asia/Tokyo date +%Y-%m-%d_%H-%M)/ --exclude '.git/*'"
artifacts:
baseDirectory: /
files:
- index.html
- タイムゾーンを JST に設定
- s3 sync コマンドでソースを S3 バケットにアップロード
- S3 バケットのプレフィックスは
yyyy-mm-dd_hh-MM
ビルド結果
# Executing command: TZ=Asia/Tokyo aws s3 sync . s3://an-makoto-test2025/$(TZ=Asia/Tokyo date +%Y-%m-%d_%H-%M)/ --exclude '.git/*'
2025-06-24T00:50:15.806Z [INFO]: Completed 1.2 KiB/1.4 KiB (26.9 KiB/s) with 3 file(s) remaining
2025-06-24T00:50:15.807Z [INFO]: upload: ./amplify.sh to s3://an-makoto-test2025/2025-06-24_09-50/amplify.sh
Completed 1.2 KiB/1.4 KiB (26.9 KiB/s) with 2 file(s) remaining
2025-06-24T00:50:15.847Z [INFO]: Completed 1.2 KiB/1.4 KiB (13.9 KiB/s) with 2 file(s) remaining
2025-06-24T00:50:15.848Z [INFO]: upload: ./index.html to s3://an-makoto-test2025/2025-06-24_09-50/index.html
Completed 1.2 KiB/1.4 KiB (13.9 KiB/s) with 1 file(s) remaining
2025-06-24T00:50:15.870Z [INFO]: Completed 1.4 KiB/1.4 KiB (13.2 KiB/s) with 1 file(s) remaining
2025-06-24T00:50:15.871Z [INFO]: upload: ./amplify.yml to s3://an-makoto-test2025/2025-06-24_09-50/amplify.yml
2025-06-24T00:50:15.944Z [INFO]: # Completed phase: build
S3 バケットにソースがアップロードされていることも確認できます。

まとめ
今回は Amplify Hosting のビルド時にソースを S3 バケットにアップロードしてみました。
どなたかの参考になれば幸いです。
Discussion