从Azure部署中排除Azure函数中的文件
我们有一个Azure函数项目,它包含一个特定命名的文件,使本地调试更加容易。但是,我们不希望该文件被部署到Azure 标准的包和发布过程明确地知道名为从Azure部署中排除Azure函数中的文件,azure,azure-functions,azure-deployment,Azure,Azure Functions,Azure Deployment,我们有一个Azure函数项目,它包含一个特定命名的文件,使本地调试更加容易。但是,我们不希望该文件被部署到Azure 标准的包和发布过程明确地知道名为local.settings.json的文件,因此永远不会部署该文件 一些在线文档和帖子说,您可以在项目中包含一个名为.funcignore的文件,该文件的语法与.gitinore相同。在那里,您应该能够指定您不希望打包的文件 我们拥有的文件名为local.funcdebuging.json,文件属性为 构建操作:无 复制到输出目录:如果较新,则
local.settings.json的文件,因此永远不会部署该文件
一些在线文档和帖子说,您可以在项目中包含一个名为.funcignore
的文件,该文件的语法与.gitinore
相同。在那里,您应该能够指定您不希望打包的文件
我们拥有的文件名为local.funcdebuging.json
,文件属性为
- 构建操作:无
- 复制到输出目录:如果较新,则复制
我们的.funcignore文件如下所示
## Files that should be ignored from Azure Deployment
# EasyAuth Debugging file
local.funcdebugging.json
尽管有这些设置,调试文件仍然会得到部署。如何防止此文件成为Azure部署的一部分?我们无法使.funcignore正常工作
我们的替代解决方案是
从repo中删除“local.funcdebuging.json”
添加一个标记调试自述文件,解释如何使用名为
并包含一些示例内容
在.gitignore中添加一个“local.funcdebuging.json”条目,以备将来使用
调试尝试没有得到整理,它最终被添加到repo中,因此被部署
似乎您正试图发布一个.csproj
。可以使用自定义复制到发布目录的内容。这是由dotnetpublish
命令创建的目录
例如,在我们的例子中,我们不想发布Typescript源代码,只想发布生成的javascript代码。我们使用以下配置:
这样,源文件将被复制到输出目录,因此在调试过程中它们是可用的,但它们不会复制到发布目录,因此它不会包含在部署的包中。您在哪里看到该文件?在bin文件夹中?在本地调试时,它位于“\\bin\\Debug\\netcoreapp2.1\\”中,但在部署到Azure时,它位于“wwwroot”中。如果它位于gitignore中,并且仍在部署中,我想这意味着该文件已在源代码中。gitignore?我没有把它包括在gitignore中,因为我不想把它从我的git回购中排除。这是我希望从中排除的Azure部署