パッチを適用
Commerce🔗およびQuality Patches ToolのCloud Patchesは、インストール済みのAdobe Commerce アプリケーションにパッチを配信します。
- Cloud Patches for Commerce パッケージは、重要な修正を含む必要なパッチを提供します
- 品質パッチは、下位互換性のない変更を含まない個別のパッチ として、オプションの影響の小さい品質の修正を提供します
リリースされたパッチの完全なリストを確認するには、Commerce Operations Tools Guideの使用可能なパッチ を参照してください。
どちらのパッケージも、すべてのAdobe Commerce バージョンとCloud環境との統合を改善し、重要な修正、オプションの修正、およびカスタム修正の迅速な配信をサポートします。 これらのパッケージを使用して、Commerceで使用可能なすべての個々のパッチに関する一般的な情報を適用、取り消し、表示できます。
リモート環境に変更をデプロイすると、ece-tools パッケージはmagento/magento-cloud-patchesとmagento/quality-patchesを使用して保留中のパッチを確認し、次の順序で自動的に適用します。
- Cloud Patches for Commerce パッケージに含まれているすべての必要なCommerce パッチを適用します。
- 品質パッチツールに含まれている、選択したオプションのCommerce パッチを適用します。
- パッチ名でアルファベット順に
/m2-hotfixesディレクトリにカスタムパッチを適用します。
ece-tools パッケージまたはCloud Patches for Commerce パッケージを更新すると、次にプロジェクトをデプロイするときに最新の必要なパッチが適用されるか、ece-patches apply CLI コマンドを使用してすばやくデプロイし、Cloud Environmentを再デプロイできます。 デプロイメントプロセス中に必要なパッチ をスキップすることはできません。前提条件
Quality Patches Toolは、CommerceのCloud Patchesおよびece-tools パッケージの依存関係です。 最新のパッチを適用するには、最新バージョンのECE-Toolsがインストールされている必要があります。 ECE-Toolsの最小必要バージョンは2002.1.2です。
使用可能なパッチとステータスの表示
使用可能な個々のパッチのリストを表示するには:
php ./vendor/bin/ece-patches status
回答サンプル:
More detailed information about patches you can find on https://support.magento.com/
╔════════════════╤═════════════════════════════════════════════════╤══════════╤═════════════╤═════════════════════════════════╗
║ Id │ Title │ Type │ Status │ Details ║
╠════════════════╪═════════════════════════════════════════════════╪══════════╪═════════════╪═════════════════════════════════╣
║ MAGECLOUD-5069 │ FPC is getting disabled during deployments │ Required │ Applied │ Affected components: ║
║ │ │ │ │ - magento/module-page-cache ║
╟────────────────┼─────────────────────────────────────────────────┼──────────┼─────────────┼─────────────────────────────────╢
║ MCLOUD-5650 │ Hold deployment config after reading from file │ Required │ Applied │ Affected components: ║
║ │ │ │ │ - magento/framework ║
╟────────────────┼─────────────────────────────────────────────────┼──────────┼─────────────┼─────────────────────────────────╢
║ MCLOUD-5684 │ Pagination Not working - product_list_limit=all │ Required │ Applied │ Affected components: ║
║ │ │ │ │ - magento/module-elasticsearch ║
╟────────────────┼─────────────────────────────────────────────────┼──────────┼─────────────┼─────────────────────────────────╢
║ MC-65837 │ Fix load balancer issue │Deprecated│ Applied │ Recommended replacement: MC-1 ║
║ │ │ │ │ Affected components: ║
║ │ │ │ │ - magento/framework ║
╟────────────────┼─────────────────────────────────────────────────┼──────────┼─────────────┼─────────────────────────────────╢
║ BUNDLE-2554 │ Set Payment info bug │ Required │ Not applied │ Affected components: ║
║ │ │ │ │ - amzn/amazon-pay-module ║
╟────────────────┼─────────────────────────────────────────────────┼──────────┼─────────────┼─────────────────────────────────╢
║ MC-1 │ Fixes issue 1 │ Optional │ Applied │ Affected components: ║
║ │ │ │ │ - magento/module-cms ║
╟────────────────┼─────────────────────────────────────────────────┼──────────┼─────────────┼─────────────────────────────────╢
║ MC-2 │ Fixes issue 2 │ Optional │ Not applied │ Affected components: ║
║ │ │ │ │ - magento/module-cms ║
╟────────────────┼─────────────────────────────────────────────────┼──────────┼─────────────┼─────────────────────────────────╢
║ MC-3 │ Fixes issue 3 │ Optional │ Not applied │ Required patches: ║
║ │ │ │ │ - MC-2 ║
║ │ │ │ │ Affected components: ║
║ │ │ │ │ - magento/module-cms ║
╟────────────────┼─────────────────────────────────────────────────┼──────────┼─────────────┼─────────────────────────────────╢
║ N/A │ ../m2-hotfixes/MDVA_custom__2.3.5_ce.patch │ Custom │ N/A │ Affected components: ║
║ │ │ │ │ - magento/module-framework ║
╚════════════════╧═════════════════════════════════════════════════╧══════════╧═════════════╧═════════════════════════════════╝
Magento 2 Enterprise Edition, version 2.3.5.0
ステータステーブルには、次のタイプの情報が含まれています。
-
種類:
Optional– 品質パッチツールとCloud Patches パッケージのすべてのパッチは、Adobe CommerceおよびMagento Open Sourceのインストールではオプションです。 Adobe Commerce on cloud infrastructureの場合、すべてのパッチはオプションです。Required- Cloud Patches for Commerce パッケージのすべてのパッチは、Cloudのお客様に必要です。Deprecated– 個別のパッチは非推奨とマークされており、適用した場合は元に戻すことをお勧めします。 非推奨(廃止予定)のパッチを元に戻すと、ステータス テーブルに表示されなくなります。Custom- 「m2-hotfixes」ディレクトリのすべてのパッチ。
-
ステータス:
Applied- パッチが適用されました。Not applied- パッチが適用されていません。N/A– 競合のため、パッチのステータスを定義できません。
-
詳細:
Affected components– 影響を受けるモジュールのリスト。Required patches– 必要なパッチ (依存関係)のリスト。Recommended replacement– 非推奨パッチの推奨される代替パッチ。
ローカル環境でのパッチの適用
パッチをローカル環境で手動で適用し、デプロイする前にテストすることができます。
ローカル開発環境で個別のパッチを適用するには:
-
.magento.env.yamlファイルに「QUALITY_PATCHES」変数を追加し、その下に必要なパッチをリストします。code language-yaml stage: build: QUALITY_PATCHES: - MCTEST-1002 - MCTEST-1003 -
プロジェクトのルートから、パッチを適用します。
code language-bash php ./vendor/bin/ece-patches applyece-patches applyコマンドは、次の順序でパッチを適用します。- 必要なパッチ
- オプションの個別パッチ
/m2-hotfixesディレクトリのカスタムパッチ
-
キャッシュをクリアします。
code language-bash php ./bin/magento cache:clean -
パッチをテストし、カスタムパッチに必要な変更を加えます。
リモート環境でのパッチの適用
リモート環境でパッチを適用するには:
-
QUALITY_PATCHES変数を.magento.env.yamlファイルに追加し、その下に必要なパッチを一覧表示します。code language-yaml stage: build: QUALITY_PATCHES: - MCTEST-1002 - MCTEST-1003note NOTE 新しいバージョンのAdobe Commerceにアップグレードした後、新しいバージョンにパッチが含まれていない場合は、パッチを再適用する必要があります。 -
更新した
.magento.env.yamlファイルを追加、コミット、プッシュします。code language-bash git add .magento.env.yamlcode language-bash git commit -m "Apply patch"code language-bash git push origin <branch-name>
カスタムパッチの適用
デプロイすると、ECE-Toolsは、すべてのAdobe パッチと、プロジェクト ルートの/m2-hotfixes ディレクトリに追加したカスタム パッチを適用します。
.patch拡張子で終わる必要があります。クラウド環境にカスタムパッチを適用してテストするには:
-
プロジェクトのルートで、
m2-hotfixesという名前のディレクトリが存在しない場合は作成しますcode language-bash mkdir m2-hotfixes -
パッチファイルを
/m2-hotfixesディレクトリにコピーします。 -
コードの変更を追加、コミット、プッシュします。
code language-bash git add m2-hotfixes/code language-bash git commit -m "Apply patch"code language-bash git push origin <branch-name>note NOTE 必ず、プリプロダクション環境ですべてのパッチをテストしてください。 Adobe Commerce on cloud infrastructureの場合、 magento-cloud environment:branch <branch-name>CLI コマンドを使用してブランチを作成できます。
カスタムパッチを元に戻す
以前に適用したカスタムパッチを元に戻すかアンインストールするには:
-
パッチファイルを
/m2-hotfixesディレクトリから削除します。 -
コードの変更を追加、コミット、プッシュします。
code language-bash git add m2-hotfixes/code language-bash git commit -m "Revert patch"code language-bash git push origin <branch-name>note NOTE 必ずプリプロダクション環境でテストしてください。 Adobe Commerce on cloud infrastructureの場合、 magento-cloud environment:branch <branch-name>CLI コマンドを使用してブランチを作成できます。
Cloud以外のプロジェクトへのパッチの適用
Magento Open SourceおよびAdobe Commerce プロジェクトに品質パッチツール を使用します。
ローカル環境でパッチを元に戻す
ece-patches CLIを使用して、以前に適用したすべてのパッチをローカル開発環境で元に戻すことができます。
適用したすべてのパッチを元に戻すには:
php ./vendor/bin/ece-patches revert
このコマンドは、すべてのパッチを次の順序で元に戻します。
- 適用されたすべてのカスタムパッチを/m2-hotfixes ディレクトリから元に戻します。
- 適用されたすべてのオプションの個別パッチを元に戻します。
- 適用されたすべての必須パッチを元に戻します。
ログ
品質パッチツールは、すべての操作を<Project_root>/var/log/patch.log ファイルに記録します。