翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ビルド設定の構成
Amplify Hosting を使用してアプリケーションをデプロイすると、フロントエンドのフレームワークと、関連するビルド設定が自動的に検出されます。package.json
はリポジトリ内に配置します。アプリのビルド設定を保存するには、次のオプションがあります。
-
Amplify コンソールでビルド設定を保存する-Amplify コンソールを使用してビルド設定を自動検出および保存することで、Amplify コンソールからアクセスできるようになります。Amplify は、これらの設定をすべてのブランチに適用します。
amplify.yml
リポジトリに保存されているファイル。 -
ビルド設定をリポジトリに保存する-
amplify.yml
ファイルおよびリポジトリのルートに追加します。
Amplify コンソールでアプリのビルド設定を編集するには、アプリの設定,ビルドの設定。ビルド設定は、アプリケーション内のすべてのブランチに適用されます。ただし、amplify.yml
ファイルがリポジトリに保存されています。
ビルドの設定Amplify コンソールで表示できます。アプリの設定メニューは、アプリが継続的デプロイ用に設定され、git リポジトリに接続されている場合のみです。このタイプの展開の手順については、を参照してください。既存のコードの使用開始。
ビルド仕様 YAML 構文
YAML ビルド仕様には、Amplify がビルドを実行するために使用する一連のビルドコマンドと関連設定が含まれます。YAML の構成は次のとおりです。
version: 1 env: variables: key: value backend: phases: preBuild: commands: - *enter command* build: commands: - *enter command* postBuild: commands: - *enter command* frontend: phases: preBuild: commands: - cd react-app - npm ci build: commands: - npm run build artifacts: files: - location - location discard-paths: yes baseDirectory: location cache: paths: - path - path test: phases: preTest: commands: - *enter command* test: commands: - *enter command* postTest: commands: - *enter command* artifacts: files: - location - location configFilePath: *location* baseDirectory: *location*
-
版-Amplify YAML バージョン番号を表します。
-
aproot-このアプリケーションが存在するリポジトリ内のパス。複数のアプリケーションが定義されていない限り無視されます。
-
env - 環境変数をこのセクションに追加します。また、環境変数はコンソールを使用して追加することもできます。
-
backend - Amplify CLI コマンドを実行して、バックエンドのプロビジョン、Lambda 関数の更新、または継続的なデプロイの一環としての GraphQL スキーマの更新を行います。フロントエンドでバックエンドをデプロイする方法について説明します。
-
frontend - フロントエンドのビルドコマンドを実行します。
-
テスト-テストフェーズでコマンドを実行します。その方法を説明しています。アプリにテストを追加する。
-
- フロントエンド、バックエンド、およびテストには 3 つあります段階ビルドの各シーケンス中に実行されるコマンドを表します。
-
-
preBuild - preBuild スクリプトは、実際のビルドの開始前、依存関係のインストール後に実行されます。
-
build - お客様のビルドコマンド。
-
postBuild - ビルド後のスクリプトはビルド完了後に実行されるため、必要なすべてのアーティファクトを出力ディレクトリにコピーしました。
-
-
artifacts>base-directory - ビルドアーティファクトが存在するディレクトリ。
-
artifacts>files - デプロイするアーティファクトからファイルを指定します。**/* は、すべてのファイルを含めることを意味します。
-
キャッシュ-buildspec のキャッシュフィールドは、ビルド時の依存関係をキャッシュするために使用されます。node_modulesフォルダを選択し、顧客のアプリが組み込まれているパッケージマネージャとフレームワークに基づいて自動的に提案されます。最初のビルドでは、ここのパスはすべてキャッシュされ、その後のビルドではキャッシュを再膨張させ、可能な限りキャッシュされた依存関係を使用してビルド時間を短縮します。
ブランチ固有のビルド設定
bash シェルスクリプトを使用してブランチ固有のビルドを設定できます。たとえば、次のスクリプトはシステム環境変数を使用します。$AWS_BRANCHブランチ名がの場合、コマンドセットを 1 つ実行します。メインブランチ名がの場合、別のコマンドセットdev。
frontend: phases: build: commands: - if [ "${AWS_BRANCH}" = "main" ]; then echo "main branch"; fi - if [ "${AWS_BRANCH}" = "dev" ]; then echo "dev branch"; fi
サブフォルダに移動する
monorepos の場合、ユーザーはできるようにしたいcd
ビルドを実行するためのフォルダに移動します。実行後cd
コマンドを使用すると、ビルドのすべてのステージに適用されるため、コマンドを別のフェーズで繰り返す必要はありません。
version: 1 env: variables: key: value frontend: phases: preBuild: commands: - cd react-app - npm ci build: commands: - npm run build
フロントエンドを使用したバックエンドのデプロイ
-amplifyPush
command はバックエンドのデプロイを支援するヘルパースクリプトです。以下のビルド設定によって、現在のブランチにデプロイする上で適切なバックエンド環境が自動的に判別されます。
version: 1 env: variables: key: value backend: phases: build: commands: - amplifyPush --simple
出力フォルダの設定
次のビルド設定は、出力ディレクトリをパブリックフォルダに設定します。
frontend: phases: commands: build: - yarn run build artifacts: baseDirectory: public
ビルドの一部としてパッケージをインストールする
♪npm
またはyarn
ビルド中にパッケージをインストールするためのコマンド。
frontend: phases: build: commands: - npm install -g pkg-foo - pkg-foo deploy - yarn run build artifacts: baseDirectory: public
プライベート npm レジストリを使用する
プライベートレジストリへのリファレンスは、ビルド設定で追加するか、環境変数として追加することができます。
build: phases: preBuild: commands: - npm config set <key> <value> - npm config set registry https://registry.npmjs.org - npm config set always-auth true - npm config set email hello@amplifyapp.com - yarn install
OS パッケージのインストール
OS パッケージをインストールして、不足している依存関係を入手します。
build: phases: preBuild: commands: - yum install -y <package>
ビルドごとのキーと値のストレージ
-envCache
ビルド時にキーと値のストレージを提供します。に格納されている値envCache
ビルド中にのみ変更でき、次回のビルドで再利用できます。の使用envCache
では、デプロイされた環境に関する情報を保存し、それを連続したビルドでビルドコンテナで使用できるようにします。に保存されている値とは異なり、envCache
では、ビルド中に環境変数を変更しても、future ビルドには反映されません。
使用例:
envCache --set <key> <value> envCache --get <key>
コミットのビルドをスキップする
特定のコミットの自動ビルドをスキップするには、次のテキストを含めます。[skip-cd]コミットメッセージの末尾です。
自動ビルドを無効にする
コードのコミットごとに自動ビルドを無効にするように Amplify を設定できます。設定するには、アプリの設定,将軍をクリックし、スクロールしてブランチセクションには、接続されているブランチの一覧が表示されます。ブランチを選択し、[] を選択します。アクション,auto ビルドを無効にする。さらにそのブランチにコミットしても、新しいビルドは作成されません。
差分ベースのフロントエンドのビルドとデプロイを有効または無効にする
差分ベースのフロントエンドビルドを使用するように Amplify を設定できます。有効にすると、各ビルドの開始時に Amplify は、appRoot
、または/src/
フォルダは、デフォルトでです。Amplify で違いが見つからない場合、フロントエンドのビルド、テスト(構成されている場合)、デプロイの各ステップはスキップされ、ホストされたアプリは更新されません。
差分ベースのフロントエンドのビルドとデプロイを構成するには
-
にサインインします。AWS Management Console[] を開くにはコンソールAmplify
。 -
差分ベースのフロントエンドビルドを構成してデプロイするアプリを選択します。
-
ナビゲーションペインで [] を選択します。アプリの設定,環境変数。
-
左環境変数[] セクションで展開します。変数を管理する。
-
環境変数の構成手順は、差分ベースのフロントエンドのビルドとデプロイを有効または無効にするかどうかによって異なります。
-
差分ベースのフロントエンドのビルドとデプロイを有効にするには
-
左変数を管理する[] セクションで展開します。可変[] と入力します。
AMPLIFY_DIFF_DEPLOY
。 -
[Value (値)] に「
true
」と入力します。
-
-
差分ベースのフロントエンドのビルドとデプロイを無効にするには
-
以下のいずれかを実行します。
-
左変数を管理するセクション、見つける
AMPLIFY_DIFF_DEPLOY
。[Value (値)] に「false
」と入力します。 -
[] を削除します。
AMPLIFY_DIFF_DEPLOY
環境変数。
-
-
-
オプションで、AMPLIFY_DIFF_DEPLOY_ROOT
環境変数は、リポジトリのルートに対する相対パスでデフォルトパスをオーバーライドします。dist
。
差分ベースのバックエンドビルドを有効または無効にする
Amplify Hosting を使用して、差分ベースのバックエンドビルドを使用するように設定できます。AMPLIFY_DIFF_BACKEND
環境変数。差分ベースのバックエンドビルドを有効にすると、各ビルドの開始時に Amplify は、amplify
リポジトリ内のフォルダ。Amplify で違いが見つからない場合、バックエンドビルドステップはスキップされ、バックエンドリソースは更新されません。プロジェクトに [] および [] がない場合。amplify
リポジトリ内のフォルダの場合、Amplify はAMPLIFY_DIFF_BACKEND
環境変数。
バックエンドフェーズのビルド設定でカスタムコマンドが現在指定されている場合、条件付きバックエンドビルドは機能しません。これらのカスタムコマンドを実行する場合は、アプリのビルド設定のフロントエンドフェーズに移動する必要があります。amplify.yml
ファイルを開きます。
差分ベースのバックエンドビルドを設定するには
-
にサインインします。AWS Management Console[] を開くにはコンソールAmplify
。 -
差分ベースのバックエンドビルドを設定するアプリを選択します。
-
ナビゲーションペインで [] を選択します。アプリの設定,環境変数。
-
左環境変数[] セクションで展開します。変数を管理する。
-
環境変数を設定する手順は、差分ベースのバックエンドビルドを有効または無効にするかによって異なります。
-
差分ベースのバックエンドビルドを有効にするには
-
左変数を管理する[] セクションで展開します。可変[] と入力します。
AMPLIFY_DIFF_BACKEND
。 -
[Value (値)] に「
true
」と入力します。
-
-
差分ベースのバックエンドビルドを無効にするには
-
以下のいずれかを実行します。
-
左変数を管理するセクション、見つける
AMPLIFY_DIFF_BACKEND
。[Value (値)] に「false
」と入力します。 -
[] を削除します。
AMPLIFY_DIFF_BACKEND
環境変数。
-
-
-