HAQM Web Services ブログ

AWS Amplify Hosting によるマルチアプリ管理の簡素化

AWS Amplify Hosting では、より多くの Amplify アプリを 1 つのリポジトリに接続できるようになりました。この変更により、開発者が Git プロバイダーと統合する方法が改善され、特にモノレポアーキテクチャに有益です。 Amplify は、関連するすべてのアプリに対して 1 つのリポジトリにつき 1 つの Webhook を使用するようになり、開発ワークフローが効率化されました。具体的な制限の詳細については、ドキュメントを参照してください。

以前は、Amplify ユーザーは Git プロバイダーが提供する Webhook の上限に制約されていました。Amplify はリポジトリに関連付けられた各アプリごとに新しい Webhook を作成したため、単一のリポジトリに複数の Amplify アプリをリンクしているユーザーは、その上限にすぐに達してしまい、アプリをさらに追加できませんでした。これは、複数のプロジェクト(複数のAmplifyアプリ)が単一のリポジトリ内に存在する、モノレポで作業しているチームにとっては特に難しいことでした。

Git プロバイダーによって許可される Webhook の具体的な数は異なりますが、これらの制限はプロジェクトを拡大したり、複雑なリポジトリ構造で作業を行ったりするチームにとって障害となっていました。

  • GitHub には 20 個の Webhook 制限があります
  • GitLab には 100 個の Webhook 制限があります
  • BitBucket には 50 個の Webhook 制限があります

統合された Webhook

Amplifyに関連するすべての Webhook を 1 つの統合された Webhook にまとめることで、この問題を解決します。これにより、リポジトリの管理が簡素化され、Webhook の制限に縛られることなく、すべての関連する Amplify アプリが更新とトリガーを受け取ることができます。

主な利点

  • Git プロバイダーの制限を克服: 現在の Webhook の制限を取り除き、必要な数の Amplify アプリを単一のリポジトリに接続できるようになります。
  • モノレポサポートの強化: 複数のプロジェクトが単一のリポジトリを共有するモノレポ構造で作業する際に、より柔軟性と効率性を得られます。
  • 管理の簡素化: 単一のリポジトリの Webhook を利用して複数の Amplify アプリを管理でき、複雑さと潜在的な障害ポイントを減らすことができます。
  • ワークフロー統合の改善: 開発プロセスの他の重要なワークフローに Webhook スロットを解放できます。

統合された Webhook の概要

新しいアプリの場合
Amplify Hosting でウェブアプリをデプロイします。Webhook 機能が組み込まれるので、リポジトリに自動的に実装されます。

既存の Amplify ユーザー向け
この新機能を利用するには、リポジトリを Amplify アプリに再接続する必要があります。手順は次のとおりです。

  1. AWS 管理コンソールで Amplify アプリに移動します。
  2. アプリのリポジトリ設定を探します。
  3. リポジトリ情報の横にある「再接続」ボタンをクリックします。
  4. 既存の Webhook を新しい統合された Webhook に置き換えるアクションを確認します。

手順

2 つの Amplify アプリを含むリポジトリから、新しい統合された Webhook に切り替える例を示します。

Screenshot of the GitHub Webhook settings

各 Webhook は次のようになります。

GitHub Webhook payload settings

次に Amplify Console に移動し、App settings → BranchReconnect Repository ボタンを見つけてください。

Screenshot of Amplify console and the branch settings area

Configure GitHub AppComplete installation をクリックしてください。

Screenshot of Amplify Console install github app

しばらくすると、リポジトリが統合された Webhook に切り替わったことがわかります。

Screenshot of GitHub Webhook settings to see the updated Webhook from amplify

これで準備は整いました。このリポジトリに接続された新しい Amplify アプリは、ここで同じ統合された Webhook を使用します。

重要な考慮事項

マイグレーション中の Webhook の制限: すでに Git プロバイダーが許可されている Webhook の最大数に達している場合、自動マイグレーションが機能しない可能性があります。この場合、事前に既存の Webhook 1 つ以上を手動で削除する必要な場合があります。

リージョン別の操作: Webhook の移行を含むすべての操作は、リージョン別に行われます。つまり、移行は Amplify アプリを再接続したリージョンの Webhook に対してのみ行われます。

まとめ

AWS Amplify Hosting の統合された Webhook の導入により、リポジトリ管理が簡素化され、モノレポなどの複雑なプロジェクト構造のサポートが強化されました。 Webhook のオーバーヘッドを削減し、Git リポジトリと Amplify アプリの接続をストリーム化することで、開発者はインフラストラクチャの制限の管理よりも優れたアプリケーションの構築に集中できるようになりました。

私たちは、この機能が特に大規模で複雑なリポジトリを扱う際の開発ワークフローを改善することを心待ちにしています。Amplify コンソールで Next.js、Nuxt、React、Angular、Vue、その他のフロントエンドアプリをデプロイし、Discord の当社コミュニティに参加して、ご意見やご経験を共有してください。

本記事は、2025 年 3 月 10 日に公開された Simplifying Multi-App Management in AWS Amplify Hosting を翻訳したものです。翻訳は Solutions Architect の吉村が担当しました。

著者について

Matt's headshot with a rock and forest behind himMatt Auerbach, Senior Product Manager, Amplify Hosting

Matt Auerbach is a NYC-based Product Manager on the AWS Amplify Team. He educates developers regarding products and offerings, and acts as the primary point of contact for assistance and feedback. Matt is a mild-mannered programmer who enjoys using technology to solve problems and making people’s lives easier. B night, however…well he does pretty much the same thing. You can find Matt on Twitter @mauerbac. He previously worked in Developer Relations at Twitch, Optimizely & Twilio.

linson headshot with a national park in the backgroundLinsong Wang, Software Development Engineer, Amplify Hosting

Linsong builds features that make it easier for customers to host front-end web applications backed by the reliability and convenience of AWS. In his free time, Linsong enjoys exploring cooking recipes, playing piano, and building life improvement prototype