从 github 操作部署 Azure 函数会导致“错误:无法获取 Kudu 应用程序设置。错误请求(代码:400)”

2024-01-23

我在尝试从 GitHub Action 部署 Azure Function 应用程序时遇到错误。

错误是

##[Initialize]
##[ValidateParameter]
##[ValidateAzureResource]
Using SCM credential for authentication, GitHub Action will not perform resource validation.

错误:执行异常(状态:ValidateAzureResource)(步骤:调用)
错误:在 ValidateAzureResource 请求 Azure 资源时,获取函数应用程序设置:无法获取应用程序设置 (SCM)
错误:无法获取 Kudu 应用程序设置。
错误请求(代码:400)
错误:无法获取 Kudu 应用程序设置。
错误请求(代码:400)

在库杜。 (D:\a_ actions\Azure\functions-action\v1\node_modules\azure-actions-app service-rest\Kudu\azure-app-kudu-service.js:62:23)
在 Generator.next() 处
已完成 (D:\a_actions\Azure\functions-action\v1\node_modules\azure-actions-appservice-rest\Kudu\azure-app-kudu-service.js:5:58)
在 processTicksAndRejections (内部/process/task_queues.js:93:5)
错误:部署失败!

几个月来,它一直以完全相同的方式工作——我已经使用它进行了数百次部署,但在过去的几天里,它开始失败(跨多个存储库)。

它非常类似于这个问题 https://stackoverflow.com/questions/64502419/azure-functions-deploy-from-github-actions-results-in-error-connect-econnrefuse/64863282#64863282,但是当我添加该问题的“变体”时,我被践踏并被告知添加为新问题 - 所以我们就在这里。

我的情况的不同之处在于,我没有使用发布配置文件(至少没有明确地),而是使用服务主体凭证 https://github.com/marketplace/actions/azure-functions-action#using-azure-service-principle-for-rbac-as-deployment-credential.。如果这不是在幕后使用发布配置文件,我不会感到惊讶(这就是为什么我认为我的问题是上面问题的变体)。

非常重要的是,我的部署过程中没有任何手动步骤 - 因此我确实需要为此找到一个完全自动化的解决方法。我正要去搜寻 GitHub 操作的代码,但与此同时,有人知道如何立即解决这个问题吗?


对于任何研究此问题的人来说,就我而言,这是由于我的函数中的 IP 访问限制 - 允许的 IP 地址集有限。

有一个简单的解决方案,而不是手动添加 Github Actions 的 Azure IP 地址 - 您可以转到 Azure > 网络 > 上的函数访问限制

进入该屏幕后,在添加规则而不是 IPv4 地址时,选择服务标签并搜索蔚蓝云服务标签,根据此标签打开所有数据中心公共 IP 地址:https://learn.microsoft.com/en-us/azure/virtual-network/service-tags-overview https://learn.microsoft.com/en-us/azure/virtual-network/service-tags-overview

最初我以为选择行动组服务标签可以工作,但随后必须恢复为蔚蓝云 tag.

如果有人知道一个更具限制性的标签来解决这个 Kudo Github Actions 问题,而不是允许所有蔚蓝云, 请给出意见。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 github 操作部署 Azure 函数会导致“错误:无法获取 Kudu 应用程序设置。错误请求(代码:400)” 的相关文章

  • 如何从 GitHub Actions 中的重定向输出中删除所有无关输出?

    我有一个使用 Terraform 进行部署的 GitHub Actions 工作流程 当 Terraform 完成后 我想获取 Terraform 输出并将其发送到工作流程中的下一个作业 以便可以提取和使用各个部分 具体来说 我的 Terr
  • 如何从 Azure 函数返回 xlsx 文件?

    我见过一些人尝试过 我无法重现他们的结果 乐于使用任何语言 我可以从 HTTP 触发器创建 xlsx 我想从另一个 HTTP 触发器返回该文件 如果您已经生成了该文件 则返回它只是创建一个带有附件的 HTTP 响应 var result n
  • 在Azure函数中设置cors标头

    在我的 Azure 函数中 我尝试设置 cors 标头 var response req CreateResponse HttpStatusCode OK response Content new ObjectContent
  • Azure Functions:为根 URL 提供内容

    我有一个 C Azure Function 项目 具有多种功能 其中一项功能是提供一些 HTML 内容 目前可以在 api home 访问该功能 但是 我希望针对根 URL 触发它 我在我的项目中添加了一个 proxies json 文件
  • Dotnet 隔离的 Azure Functions - 如何访问 HttpContext

    我有一个由 HTTP 调用触发的 dotnet 5 Azure 函数 dotnet isolated 该函数将由不同的 Azure 函数应用程序调用 我想使用 Azure AD 保护目标并使用 客户端凭据 OAuth2 流 我在以下位置找到
  • 无法在 Visual Studio Code 中调试 Azure Functions。调试器停止

    I am using http trigger Azure Function When I am running my application by pressing F5 after clicking http localhost 707
  • 使用托管身份将 Function App 连接到 CosmosDB

    我正在尝试在函数应用程序中编写一个函数来操作 CosmosDB 中的数据 如果我将读写键放入环境变量中 我就能正常工作 为了使其更加强大 我希望它能够作为托管身份应用程序运行 该应用程序在 Cosmos DB 上具有 DocumentDB
  • 从Azure功能(powershell)访问IP受限的URI

    我想知道给定的 Powershell 函数 例如 url http AnIPrestrictedURL xml xml new object System Net WebClient DownloadString url url 是一个 I
  • 如何在 VS Code 中编辑现有的 azure 函数

    到目前为止 在我发现的有关使用 Visual Studio 代码的 Azure 函数的所有教程中 它们都是关于创建和部署的 我只是想知道如何在 VS Code 中打开现有的 azure 函数 修改它并重新部署它 那可能吗 I can ope
  • 来自 Microsoft Graph 的多个更改通知

    每当更新 创建 删除或编辑 事件时 我都尝试从 Microsoft Graph 接收更改通知 我已成功创建订阅 接收通知的 URL 属于 Azure Function 但是 每当我创建或删除事件时 图表都会针对一个特定更改发送多个通知 正如
  • Azure 函数中的内存缓存

    需要缓存对象以提高我的 Azure 函数的性能 我尝试了 NET ObjectCache System Runtime Caching 它在我的测试中运行良好 测试的缓存保留期长达 10 分钟 为了推进这个解决方案 我有几个简单的问题 Az
  • Azure 函数的 Zip 部署成功,但 Azure 中的函数为空

    您好 我有一个 Azure 函数计时器 我正在尝试通过 ZIP 部署进行部署 它成功了 但 Azure 中的函数是空的 我用于部署的 cmd 是az functionapp 部署源 config zip g resourceGroupNam
  • Azure Functions 数据库连接字符串

    如何添加或访问app configAzure 函数中的文件添加数据库连接字符串 如果你不应该添加app config并且有更好的方法来访问外部数据库来执行该功能 请让我知道最佳实践 谢谢 Jan V almost钉住了它 这促使我在loca
  • GitHub Actions 工作流程不响应其他工作流程中的推送事件

    我创建了一个工作流程 在推送分支 A 时自动将分支 A 合并到分支 B 中 并创建了一个在推送分支 B 时运行的工作流程 但是 当推送分支 B 时 工作流不会运行 这是 GitHub 规范吗 如果是这样 我想知道是否有文档或问题明确说明了这
  • 对 Azure Functions 和 .csx 文件进行单元测试

    Azure Functions 抽象了大量依赖项 例如队列库和 Azure 表 因此 从单元测试依赖项模拟的角度来看 编码工作量较少 因此维护也较少 假设我们使用 Visual Studio 2015 进行本地开发 如何对单个 Azure
  • 如何在blob存储中创建文件夹

    我有一个文件 例如Parent zip解压后 它将产生以下文件 child1 jpg child2 txt child3 pdf 跑步时Parent zip通过下面的函数 文件被正确解压到 some container child1 jpg
  • 为什么 Github 操作日志显示星号?

    在 Github 操作运行器上运行时 Maven 日志输出仅显示 3 个星号 而不是实际的字符串 警告 home runner work project src test java de persistence dao DaoTest ja
  • 如何启用非 docker 操作来访问我的自托管 github 操作运行器上 docker 创建的文件? (无根码头工人)

    Github 建议以非 root 用户身份运行他们的运行程序 这引起了一些问题围绕混合 docker 和非 docker 操作的问题 https github com actions runner issues 434 这非常烦人 因为它导
  • 无法在 Azure Functions 中创建文件

    我有一个在应用服务计划上运行的 Azure 功能 此函数应用程序从 sftp 下载文件并执行一些处理 验证 然后上传到 blob 存储 这是工作代码 我必须进行一些更改 以便我必须保存物理文件 FileStream 而不是 MemorySt
  • Node.js 中的 Azure Function 和共享文件

    我正在通过 Bitbucket CI 部署我的 Azure Functions 我可以在多个函数中引用共享目录中的文件 这很棒 但是 当我尝试更新我的共享代码并通过推送到主分支来部署它时 我可以看到文件在我的 Kudu 控制台中更新 但我的

随机推荐