【发布时间】:2019-11-21 08:14:50
【问题描述】:
我想通过我们的 C# .NET 工具从 lambdas "$latest" 版本中删除所有环境变量。为此,我使用以下代码:
using (var lambdaClient = new AmazonLambdaClient(awsCredentials, RegionEndpoint.EUCentral1))
{
// Get the lambda config.
var lambdaConfig = lambdaClient.GetFunctionConfigurationAsync(lambdaName).Result;
var request = new UpdateFunctionConfigurationRequest()
{
FunctionName = lambdaName,
Environment = new Amazon.Lambda.Model.Environment()
{
// Remove all environment variables.
Variables = new Dictionary<string, string>(),
}
};
var response = lambdaClient.UpdateFunctionConfigurationAsync(request).Result;
// This is currently hit every time, as the environment variables are not deleted.
if (response.Environment.Variables != null && response.Environment.Variables.Any())
Debug.LogError("Could not delete lambda environment variables!");
}
我知道我可以通过 AWS Web 控制台手动执行此操作,但我希望为每个新的 lambda 部署自动执行此操作,以便在 lambda 上仅配置所需的环境变量。
我想从“$latest”版本中删除变量,而不是已发布的,因为我知道已发布的版本不能更改其环境变量,只能更改“$latest”。
我正在使用适用于 .NET Core 的 NuGet 包 AWSSDK.Lambda,版本 3.3.103.25。
【问题讨论】:
标签: c# aws-lambda environment-variables