Skip to content

Show warning when updating/deploying to Function apps running retired stack versions #4366

@MadhuraBharadwaj-MSFT

Description

@MadhuraBharadwaj-MSFT

Context
VSCode leverages StacksAPI to ensure new Function apps cannot be created on retired stack versions. For stack versions approaching end-of-life date in <6months, there's a warning (screenshot below)

Image

Ask
We should also similarly warn users when they're updating/deploying to Function Apps running on retired/soon-to-be- retired versions. This is not a blocking action i.e., updates and deployments are not blocked but we want to alert users of the support state of the app and encourage them to upgrade to supported versions.

Description

Action: Deploying to an Existing Function App Condition Behavior Warning message.
Functions version and/or stack version is out of support Show warning message. "Upgrade to 'Language Runtime' 'latest available version' as 'current language runtime version' has reached end-of-life on 'date' and is no longer supported. Learn more: aka.ms/FunctionsStackUpgrade"
Functions version and/or stack version will be out of support in less than 6 months Show warning message. "Upgrade 'Language Runtime' 'latest available version' as 'current language runtime version' will reach end-of-life on 'date' and will no longer be supported. Learn more: aka.ms/FunctionsStackUpgrade"
Action: Updating an Existing Function App (ARM calls for CRUD app settings, editing ARM tags, update slot settings) Condition Behavior Warning message.
Functions version and/or stack version is out of support Show warning message. "Upgrade to 'Language Runtime' 'latest available version' as 'current language runtime version' has reached end-of-life on 'date' and is no longer supported. Learn more: aka.ms/FunctionsStackUpgrade"
Functions version and/or stack version will be out of support in less than 6 months Show warning message. "Upgrade 'Language Runtime' 'latest available version' as 'current language runtime version' will reach end-of-life on 'date' and will no longer be supported. Learn more: aka.ms/FunctionsStackUpgrade"

Acceptance Criteria
Work item can be marked 'Completed' when we have implemented, tested and deployed the logic to show warnings for the 2 scenarios mentioned above.

Additional information
How to identify current stack versions, EOL dates and latest available version for a given Language runtime?

  1. Get current stack version information: See this

For Linux:

All stacks - get app runtime version from linux_fx_version (from site config)

For Windows:

Node: WEBSITE_NODE_DEFAULT_VERSION (from app setting)
.NET: netFrameworkVersion (from site config)
Java: javaVersion (from site config)
PowerShell: powerShellVersion (from site config)

  1. Compare against EOL dates in StacksAPI: See this

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions