View a markdown version of this page

一般的なユースケース - AWS 変換

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

一般的なユースケース

このセクションでは、 AWS Transform step-by-stepのガイダンスを提供します。

Lambda ランタイムのアップグレード

Lambda は古い言語ランタイムを定期的に廃止するため、チームは Lambda 関数をサポートされているバージョンにアップグレードする必要があります。 AWS Transform custom は AWS、マネージド言語バージョンアップグレード変換を使用してこれらのアップグレードを自動化できます。たとえば、Python 3.9 で記述された Lambda 関数を Python 3.13 にアップグレードするには、 AWS/python-version-upgrade変換を使用します。Java (AWS/java-version-upgrade) と Node.js () でも同様の変換が利用できAWS/nodejs-version-upgrade、最も一般的な Lambda ランタイム言語をカバーしています。

単一の Lambda 関数をインタラクティブにアップグレードするには、関数のソースリポジトリのルートに移動し、 で AWS Transform CLI を起動しますatx。インタラクティブセッションで、必要なアップグレードについて説明します。たとえば、「この Python 3.9 Lambda 関数を Python 3.13 にアップグレードする」などです。エージェントは、適切な AWSマネージド変換の選択、コードの分析、言語構文の更新、依存関係の調整、廃止された API コールのモダナイズを行います。pytest や などのビルドまたは検証コマンドを指定python -m py_compile *.pyして、エージェントが変換されたコードのコンパイルを検証し、テストに合格できるようにします。インタラクティブセッションを通じて、最終的な結果を承諾する前に、エージェントの提案された変更を確認し、フィードバックを提供し、調整をリクエストできます。

多くのリポジトリで Lambda ランタイムをアップグレードする必要がある場合は、非インタラクティブモードを使用して大規模な変換を実行します。リポジトリごとに、ユーザー入力なしで実行する適切なフラグを使用して CLI を呼び出します。たとえば、Node.js 16 Lambda 関数を Node.js 22 にアップグレードするには:

atx custom def exec \ -n AWS/nodejs-version-upgrade \ -p ./my-lambda-repo \ -c "npm test" \ -g "additionalPlanContext='Upgrade from Node.js 16 to Node.js 22'" \ -x -t

-x フラグは変換を非インタラクティブに実行し、すべてのツール実行を-t信頼するため、プロンプトは必要ありません。シンプルなシェルループを使用して、数十または数百のリポジトリでこのコマンドをスクリプト化できます。各変換が完了したら、Git 差分を確認して変更を確認し、テストスイートを実行してアップグレードされた関数が正しく動作することを確認します。 AWS Transform custom を CI/CD パイプラインに統合して、非推奨の Lambda 関数を継続的に特定することもできます。このアプローチは、廃止されたランタイムの即時の問題に対処するだけでなく、end-of-supportステータスに達する前に関数を検出してアップグレードする継続的なプロセスを確立します。

中央プラットフォームチームは、AWS 変換ウェブアプリケーションを通じてキャンペーンを作成して、変換を定義し、ターゲット Lambda リポジトリを指定し、組織全体の進捗状況を追跡できます。 AWS Batch を使用して本稼働グレードのスケールドデプロイソリューションを構築する詳細なチュートリアルについては、AWS 「Transform custom を使用したスケーラブルなコードモダナイゼーションソリューションの構築」を参照してください。