diff --git a/packages/amplify-category-analytics/src/commands/analytics/add.ts b/packages/amplify-category-analytics/src/commands/analytics/add.ts index 0729dabff85..745ca4cffd1 100644 --- a/packages/amplify-category-analytics/src/commands/analytics/add.ts +++ b/packages/amplify-category-analytics/src/commands/analytics/add.ts @@ -16,6 +16,9 @@ let options: $TSAny; export const run = async (context: $TSContext): Promise<$TSAny> => { const { amplify } = context; const servicesMetadata = amplify.readJsonFile(`${__dirname}/../../provider-utils/supported-services.json`); + printer.warn(`Amazon Pinpoint is reaching end of life on October 30, 2026 and no longer accepts new customers as of May 20, 2025. + It is recommended you use Kinesis for event collection and mobile analytics instead.\n`); + return amplify .serviceSelectionPrompt(context, category, servicesMetadata, 'Select an Analytics provider') .then((result) => { diff --git a/packages/amplify-category-analytics/src/commands/analytics/push.ts b/packages/amplify-category-analytics/src/commands/analytics/push.ts index d40f3a3bb78..bab2721b345 100644 --- a/packages/amplify-category-analytics/src/commands/analytics/push.ts +++ b/packages/amplify-category-analytics/src/commands/analytics/push.ts @@ -1,4 +1,5 @@ import { $TSAny, $TSContext } from '@aws-amplify/amplify-cli-core'; +import { printer } from '@aws-amplify/amplify-prompts'; const subcommand = 'push'; const category = 'analytics'; @@ -11,6 +12,8 @@ export const run = async (context: $TSContext): Promise<$TSAny> => { const { amplify, parameters } = context; const resourceName = parameters.first; context.amplify.constructExeInfo(context); + printer.warn(`Amazon Pinpoint is reaching end of life on October 30, 2026 and no longer accepts new customers as of May 20, 2025. + If you are using Pinpoint, it is recommended you use Kinesis for event collection and mobile analytics instead.\n`); return amplify.pushResources(context, category, resourceName); }; diff --git a/packages/amplify-category-analytics/src/commands/analytics/update.ts b/packages/amplify-category-analytics/src/commands/analytics/update.ts index 30fdf160397..bc974fdaaff 100644 --- a/packages/amplify-category-analytics/src/commands/analytics/update.ts +++ b/packages/amplify-category-analytics/src/commands/analytics/update.ts @@ -12,6 +12,8 @@ const category = 'analytics'; export const run = async (context: $TSContext): Promise<$TSAny> => { const { amplify } = context; const servicesMetadata = amplify.readJsonFile(`${__dirname}/../../provider-utils/supported-services.json`); + printer.warn(`Amazon Pinpoint is reaching end of life on October 30, 2026 and no longer accepts new customers as of May 20, 2025. + If you are using Pinpoint, it is recommended you use Kinesis for event collection and mobile analytics instead.\n`); return amplify .serviceSelectionPrompt(context, category, servicesMetadata) diff --git a/packages/amplify-category-interactions/src/commands/interactions/push.js b/packages/amplify-category-interactions/src/commands/interactions/push.js index 60a74b236ba..a6d8213dd15 100644 --- a/packages/amplify-category-interactions/src/commands/interactions/push.js +++ b/packages/amplify-category-interactions/src/commands/interactions/push.js @@ -7,6 +7,9 @@ module.exports = { const { amplify, parameters } = context; const resourceName = parameters.first; context.amplify.constructExeInfo(context); + context.print + .warning(`Amazon Lex V1 is reaching end of life on September 15, 2025 and no longer allows creation of new bots as of March 31, 2025. + It is recommended that you migrate your bot to Amazon Lex V2 before September 15. \n`); return amplify.pushResources(context, category, resourceName).catch((err) => { context.print.info(err.stack); context.print.error('There was an error pushing the interactions resource'); diff --git a/packages/amplify-category-interactions/src/commands/interactions/update.js b/packages/amplify-category-interactions/src/commands/interactions/update.js index c957401e3eb..aa69066de2a 100644 --- a/packages/amplify-category-interactions/src/commands/interactions/update.js +++ b/packages/amplify-category-interactions/src/commands/interactions/update.js @@ -7,6 +7,9 @@ module.exports = { alias: ['configure'], run: async (context) => { const { amplify } = context; + context.print + .warning(`Amazon Lex V1 is reaching end of life on September 15, 2025 and no longer allows creation of new bots as of March 31, 2025. + It is recommended that you migrate your bot to Amazon Lex V2 before September 15. \n`); return amplify .serviceSelectionPrompt(context, category, servicesMetadata) diff --git a/packages/amplify-category-notifications/src/commands/notifications/add.ts b/packages/amplify-category-notifications/src/commands/notifications/add.ts index 49651e419ec..a40db02ee9b 100644 --- a/packages/amplify-category-notifications/src/commands/notifications/add.ts +++ b/packages/amplify-category-notifications/src/commands/notifications/add.ts @@ -57,6 +57,10 @@ export const run = async (context: $TSContext): Promise<$TSContext> => { }); } + printer.warn(`Amazon Pinpoint is reaching end of life on October 30, 2026 and no longer accepts new customers as of May 20, 2025. + It is recommended you use use AWS End User Messaging for push notifications and SMS, Amazon Simple Email Service for sending emails, Amazon Connect for campaigns, journeys, endpoints, and engagement analytics. + For more information see: https://docs.aws.amazon.com/pinpoint/latest/userguide/migrate.html \n`); + const availableChannels: Array = getAvailableChannels(); const disabledChannels: Array = await getDisabledChannelsFromAmplifyMeta(); diff --git a/packages/amplify-category-notifications/src/commands/notifications/configure.ts b/packages/amplify-category-notifications/src/commands/notifications/configure.ts index a196ae41a5e..a7b0e29b3f4 100644 --- a/packages/amplify-category-notifications/src/commands/notifications/configure.ts +++ b/packages/amplify-category-notifications/src/commands/notifications/configure.ts @@ -1,5 +1,5 @@ import { $TSContext, AmplifyError } from '@aws-amplify/amplify-cli-core'; -import { prompter } from '@aws-amplify/amplify-prompts'; +import { prompter, printer } from '@aws-amplify/amplify-prompts'; import * as pinpointHelper from '../../pinpoint-helper'; import * as notificationManager from '../../notifications-manager'; import { IChannelAPIResponse } from '../../channel-types'; @@ -25,6 +25,10 @@ export const alias = 'update'; * @returns context with notifications metadata updated */ export const run = async (context: $TSContext): Promise<$TSContext> => { + printer.warn(`Amazon Pinpoint is reaching end of life on October 30, 2026 and no longer accepts new customers as of May 20, 2025. + It is recommended you use use AWS End User Messaging for push notifications and SMS, Amazon Simple Email Service for sending emails, Amazon Connect for campaigns, journeys, endpoints, and engagement analytics. + For more information see: https://docs.aws.amazon.com/pinpoint/latest/userguide/migrate.html \n`); + const availableChannelViewNames = getAvailableChannelViewNames(); let channelViewName = context.parameters.first ? getChannelViewName(context.parameters.first) : undefined; diff --git a/packages/amplify-category-notifications/src/commands/notifications/status.ts b/packages/amplify-category-notifications/src/commands/notifications/status.ts index e5f4bb5fcf8..96ea86558b6 100644 --- a/packages/amplify-category-notifications/src/commands/notifications/status.ts +++ b/packages/amplify-category-notifications/src/commands/notifications/status.ts @@ -21,6 +21,10 @@ const viewStyles = { }; const getDeployedStyledStatus = (deployedChannel: string, deployedChannels: IChannelAvailability, configuredState: string): string => { + printer.warn(`Amazon Pinpoint is reaching end of life on October 30, 2026 and no longer accepts new customers as of May 20, 2025. + It is recommended you use use AWS End User Messaging for push notifications and SMS, Amazon Simple Email Service for sending emails, Amazon Connect for campaigns, journeys, endpoints, and engagement analytics. + For more information see: https://docs.aws.amazon.com/pinpoint/latest/userguide/migrate.html \n`); + if (deployedChannels.enabledChannels.includes(deployedChannel)) { if (configuredState === 'Enabled') { return viewStyles.deployed('Deployed');