.net - 如何在没有参数的情况下运行“dotnet lambda deploy-serverless”命令?
问题描述
晚上好。问题是关于dotnet lambda deploy-serverless
指挥的。此命令用于使用 AWS CloudFormation 将 .Net 应用程序部署到 AWS Lambda 服务。当我尝试在 Jenkins 管道中运行此命令时:
stage('Update AWS lambda') {
steps {
bat "cd MyFinance.Api"
bat "dotnet lambda deploy-serverless"
}
}
我收到有关缺少参数的错误:
C:\Program Files (x86)\Jenkins\workspace\MyFinanceApiPipeline>dotnet lambda deploy-serverless Amazon Lambda Tools for .NET Core applications (4.1.0) 项目主页: https ://github.com/aws/aws-extensions- for-dotnet-cli , https://github.com/aws/aws-lambda-dotnet 输入 CloudFormation 堆栈名称:(AWS 无服务器应用程序的 CloudFormation 堆栈名称)输入 S3 存储桶:(S3 存储桶以上传构建输出)输入CloudFormation 模板:(CloudFormation 模板的路径)输入 AWS 区域:(连接到 AWS 服务的区域,如果未设置,将从环境中检测到区域。)无法确定 AWS 区域。配置默认区域或使用 --region 选项。
但是,如果我在我的项目文件夹中通过 PowerShell 运行此命令,一切正常。Near是命令执行结果的截图。 在 PowerShell 中成功执行命令 那么,如何在没有参数的情况下在 Jenkins 管道中运行它(就像我通过 PowerShell 所做的那样)?先感谢您。
解决方案
当您不传递那些请求的参数时,就会发生这种情况。您可以将这些作为参数传递给命令
dotnet lambda deploy-serverless --stack-name replace-your-stack-name-here --s3-bucket replace-s3-bucket-name-here --region replace-with-region
在运行此命令之前,您必须浏览拥有“serverless.template”文件的文件夹。或者您可以选择使用参数-t将路径传递给模板文件
推荐阅读
- javascript - 为什么每次运行 fetch 都会返回相同的结果?
- java - Java Google Photos Api - 如何取消“PhotosLibraryClient.initialize(settings)”?
- tcp - TCP连接暂停很长时间然后重新启动
- java - 如何基于具有其他属性的类的一个属性对链表进行排序
- html - 为什么不显示里面
使用 *ngFor 循环? - machine-learning - 神经网络会在不同的运行时翻译成同一个句子吗?我可以在运行时收到许多翻译的句子吗?
- javascript - 如何在 Svelte 中拼接后更新数组?
- angular - ChangeDetectionStrategy.OnPush 不起作用?
- csv - 使用 ORC 文件格式将 JSON 复制到雪花时如何避免键和值标头
- java - 在java中读取包含多列的txt文件