gpt4 book ai didi

azure - 在 Azure 中,如何在不使用 git 的情况下部署 functionapp 代码?

转载 作者:行者123 更新时间:2023-12-02 06:09:50 25 4
gpt4 key购买 nike

我创建了一个资源管理器模板,其中包含运行功能应用程序的资源,基本上使用默认模板来实现此目的,我可以手动将文件复制到 sites\wwwroot 下的文件存储中,当我 curl 函数应用程序它可以工作。

但我想知道的是,部署一堆文件来更新实际的 functionapp 的正确方法是什么,但不使用 git。我可以看到一些如何使用 git 的示例,但我的问题是我希望将所有功能放在一个存储库中,而不是一堆较小的存储库中(我想要一个单一存储库)。

在 Azure 中,您只需将 .gz 文件中的代码上传到 S3,然后在创建 lambda 时为其指定 zip 路径。然后,您可以调用一个简单的 API 来推送新的 zip 和 presto。

azure 中的等效 API 是什么,只需给它一个 zip 并将其解压到正确的目录中的文件?

编辑:

我终于弄清楚了,最重要的答案基本上是正确的,但我必须弄清楚一些额外的步骤,所以我将它们放在这里。

关于curl的具体文档是here 。我与团队的问题主题是 here .

我使用的实际curl调用是这样的:

$ curl -XPUT --data-binary @index.js.zip "https://abc:<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="cfb7b6b58fbaa8a7e1bcaca2e1aeb5babdaab8aaadbca6bbaabce1a1aabb" rel="noreferrer noopener nofollow">[email protected]</a>/api/zip/site/wwwroot/hello"

注意事项:

  • 您必须使用 --data-binary-d 会导致错误的负载
  • 为了在 bash 中创建 zip,我使用了:$ zip index.js.zip index.js
  • abc:xyz 是部署用户名和密码
  • 正确的发送路径是 site/wwwroot/hello,其中 hello 是函数的名称。

您可以在 azure 门户 UI ( documented here ) 中设置用户名和密码,但也可以使用 azure-cli 进行设置,如下所示:

$ az login
$ az webapp deployment user set --user-name abc --password xyz

这就是技巧,一旦您设置了部署凭据,您就可以在基本身份验证中使用它们来调用 kudu api。

最佳答案

Azure 中也允许使用 Rest API 部署 Function App。我们可以使用以下 Rest API 来做到这一点。我们可以从 Kudu REST API 获取更多详细信息。我们可以从发布文件中获取ftp用户名和密码,如何发布文件请引用另一篇SO thread .

PUT https://{user}:{password}@{FunctionAppname}.scm.azurewebsites.net/api/zip/{path}  # example path:site/wwwroot

关于azure - 在 Azure 中,如何在不使用 git 的情况下部署 functionapp 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46597982/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com