aws / aws-extensions-for-dotnet-cli

Extensions to the dotnet CLI to simplify the process of building and publishing .NET Core applications to AWS services
Apache License 2.0
374 stars 87 forks source link

Update warning for ARM and AMD architectures on Amazon Linux #347

Closed gcbeattyAWS closed 6 days ago

gcbeattyAWS commented 1 week ago

Issue #, if available: N/A

Description of changes:

In Amazon.Lambda.Tools if you deploy to the provided.al2023 using ARM64 the tooling displays the following warning.

WARNING: There is an issue with self contained ARM based .NET Lambda functions using custom runtimes that causes functions to fail to run. The following GitHub issue has further information and workaround.
https://github.com/aws/aws-lambda-dotnet/issues/920

This message and associated GitHub issue is out of date because it talks about provided.al2. In provided.al2 the AMD64 version had a compatible libicu version and the ARM64 was too old. Customers work around this by including libicu in there deployment bundle. Our blueprints do this in the csproj using the following

  <ItemGroup>
    <RuntimeHostConfigurationOption Include="System.Globalization.AppLocalIcu" Value="72.1.0.3" />
    <PackageReference Include="Microsoft.ICU.ICU4C.Runtime" Version="72.1.0.3" />
  </ItemGroup>

In provided.al2023 neither architecture have libicu installed but the warning is only coming up for ARM64.

This change does the following:

  1. Updated Amazon.Lambda.Tools so that the warning is displayed for either architecture. Also updated the text of the warning to talk about how this affects both architectures.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.