AWS amplify medium security documentation change
Summary
Added guidance for upgrading Node.js versions ahead of EOL dates for versions 16/18, with migration instructions.
Security assessment
The change addresses security risks associated with using unsupported Node.js versions (potential unpatched vulnerabilities). The EOL warning and upgrade instructions directly relate to maintaining secure application environments.
Diff
diff --git a/amplify/latest/userguide/troubleshooting-general.md b/amplify/latest/userguide/troubleshooting-general.md index c9092b3a1..ca01c7dd8 100644 --- a//amplify/latest/userguide/troubleshooting-general.md +++ b//amplify/latest/userguide/troubleshooting-general.md @@ -5 +5 @@ -HTTP 429 status code (Too many requests)The Amplify console doesn't display the build status and last update time for my app Web previews are not being created for new pull requestsMy manual deployment is stuck with a pending status in the Amplify console +HTTP 429 status code (Too many requests)The Amplify console doesn't display the build status and last update time for my app Web previews are not being created for new pull requestsMy manual deployment is stuck with a pending status in the Amplify consoleI need to update my application's Node.js version @@ -20,0 +21,2 @@ The following information can help you troubleshoot general issues with Amplify + * I need to update my application's Node.js version + @@ -105,0 +108,41 @@ We highly recommend uploading a .zip file to an Amazon S3 bucket, as this avoids +## I need to update my application's Node.js version + +Amplify support for apps using Node.js versions 16 and 18 ends on September 15, 2025\. Applications that are already deployed will continue running. However, after this date, you won't be able to deploy updates to your application until you upgrade to Node.js version 20 or later. + +If you are using the Amazon Linux 2023 build image, Node.js version 20 is supported by default. Starting on September 15, 2025, the AL2023 image will automatically support Node.js 22 and change its default Node.js version from 18 to 22. + +Amazon Linux 2 (AL2) doesn't automatically support Node.js version 20 or later. If you are currently using AL2, we recommend that you switch to AL2023. You can change the build image in the Amplify console. You can also use a custom build image that supports the Node.js version that you specify. + +Prior to upgrading, we recommend that you test your application on a new branch to verify that it functions correctly. + +**Upgrade options** + +**Amplify console** + + +You can use the live package updates feature in the Amplify console to specify the version of Node.js to use. For instructions, see [Using specific package and dependency versions in the build image](./custom-build-image.html#setup-live-updates). + +**Custom build image** + + +If you are using a custom build image and NVM is installed on your image, you can add `nvm install 20` to your Dockerfile. To learn more about the requirements and configuration instructions for a custom build image, see [Customizing the build image](./custom-build-image.html). + +**Build settings** + + +You can specify the Node.js version to use in your application's `amplify.yml` build settings, by adding the `nvm use` command to the preBuild commands section. For instructions on updating an application's build settings, see [Configuring the build settings for an app](./build-settings.html). + +The following example demonstrates how to customize the build settings to set the default Node.js version to Node.js 18 and upgrade to Node.js version 20 on a test branch named `node-20`. + + + frontend: + phases: + preBuild: + commands: + - nvm use 18 + - if [ "${AWS_BRANCH}" = "node-20" ]; then nvm use 20; fi + +###### Warning + +Be aware that `preBuild` commands run after live package updates. The Node.js version specified by the `nvm use` command will override the Node.js version set by live package updates. +