问题标签 [kudu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
8030 浏览

azure - 如何将自定义后部署脚本添加到 azure 网站?

我的问题是我需要在构建后运行自定义 cmd 文件。我不想修改部署脚本,我只想轻松地对我的部署运行一些 MSDOS 命令。

我需要做的任务是在构建成功后在位于 /source/copyextrafiles.cmd 的存储库中运行 cmd。

我怎样才能做到这一点?

0 投票
0 回答
1001 浏览

python - azure python '这里什么都没有'

我在 test.py 文件中的 web.py 中有一个简单的 hello world 网站

在 azure 网站配置中,我有:

1、开启python 2.7.3

2、app设置PYTHONPATH为D:\home\site\wwwroot

3、app设置WSGI_HANDLER为test.wsgiHandler() 这匹配文件名到文件中的函数。

4、新增handler mappings *, d:\Python27\python.exe, D:\python27\scripts\wfastcgi.py

我已经保存并重新启动了网站,但仍然看到蔚蓝的登陆页面显示“这里什么都没有”。我已经在控制台中检查了 dir 并且我的所有文件都在那里(我使用 bitbucket 持续部署)。我可以在本地运行它,它会在浏览器中呈现“hello world”。

我在 azure 配置中尝试了不同的默认文档,目前只有“index.html”。

我觉得我在这里遗漏了一些小东西,但我不知道为什么它不起作用?!默认文档是否必须具体,“WEBSITE_NODE_DEFAULT_VERSION”是否需要更改?

编辑 23/10/14

我尝试了一个 hello world 烧瓶应用程序,但它也无法正常工作。但是我确实注意到天蓝色的“这里什么都没有”登陆页面显示“该网站正在运行 Python 2.7.8”。这与 azure 网站配置中列出的 python 版本不同。这可能有关系吗?

编辑 28/10/14 已解决

我已经解决了这个问题,所以这是其他人的解决方案。

似乎 azure 没有根据用户在 azure 门户网站配置中的输入更新 web.config 文件。因此,虽然我的网站配置如上,但 web.config 文件仍然具有默认的 WSGI_HANDLER 作为“hostingstart-oython.application”,这意味着它认为“什么都没有”。使用 Kudu 帮助,即 websitename.scm.azurewebsites.net

0 投票
3 回答
3473 浏览

azure - FileNotFoundException for Microsoft.VisualStudio.QualityTools.UTFResources when deploying to Azure Websites

I'm using Azure Websites git deploy (via Kudu), and everything has been going great, until today. When I do a new git push, and it tries to deploy, I get this error message while my tests are running:

Error: System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.VisualStudio.QualityTools.UTFResources, Version=10.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.

I haven't added or removed any libraries or other references from my solution between the last successful push and when I started getting this errors. Googling doesn't turn up anything. That file is in my local GAC, but I can't find it referenced directly anywhere in my solution.

Redeploying an old version of my solution - a version that deployed correctly earlier in the day - fails with the same error message.

If I didn't know better, I'd think that MS changed something on their end and broke kudu.

Any thoughts about troubleshooting this, shy of opening a ticket with Azure?

EDIT - More Details:

It's failing while running the unit tests. Here's the relevant portion of my deploy.cmd:

It's failing during the first call to vstest.console.exe, after successfully running a whole bunch of the unit tests, but before finishing. Here's an example of the log file:

I should note that if I comment out the calls to the unit tests, I can get it to deploy. So I suppose the question is basically - what can I do to get my unit tests running again? Is it possible that the recent update to the Azure websites - the one that supported, among other things, TypeScript 1.1 - could have possibly removed Microsoft.VisualStudio.QualityTools.UTFResources.dll from the GAC? Or something along those lines?

0 投票
1 回答
936 浏览

azure-web-app-service - 在 Kudu Azure 网站部署中设置默认应用设置

是否可以在部署脚本中的 AzureWebsites 中设置默认的 appsettings 键/值?

我知道这在 web.config 中是可能的,但我想在 AzureWebsites 配置选项卡中动态设置,例如。

0 投票
3 回答
2948 浏览

azure - 通过 git 部署 azure webjob

我有一个包含 .net mvc 网站和 webjob 的解决方案。

我使用 git 进行部署 - 所以在 git push 到 azure 时,我的网站已升级。我现在只是添加一个将按计划运行的控制台应用程序。我正在尝试解决如何在我的网站上部署它git push,但我不确定如何执行此操作。

我知道我可以创建一个文件夹website\app_data\jobs\triggered\webjob并将文件复制到那里(例如从 webjob 上的构建后事件),但这意味着我需要将所有这些文件提交到 git repo 以便部署以获取它们 -这也意味着每次我构建时,Git 都会提示我再次提交它们 - 呃。

有没有更好的方法来做到这一点 - 我可以将我的回购推送到天蓝色,它会正确部署我的网站和我的网络作业?

谢谢

0 投票
0 回答
540 浏览

azure - Azure Web 作业不断重启

我创建了一个控制台应用程序,我将它作为一个连续的 Web 作业运行。它不使用 Web 作业 SDK,但会检查 WEBJOBS_SHUTDOWN_FILE 环境变量中指定的文件。

我已打开“始终开启”选项,并且我正在使用 settings.job 文件将共享计划中的作业作为单例运行。

Web 作业不断被 WEBJOBS_SHUTDOWN_FILE 停止,然后再次重新启动。

我一直在寻找 kudu 资源,但我找不到我的网络作业重新启动的原因。

有人知道为什么会这样吗?

这是初始化 FileSystemWatcher 的代码:

0 投票
0 回答
903 浏览

unit-testing - 部署 Azure 网站时运行 Jasmine/Karma 单元测试

在部署到 Azure 网站时,我不断看到能够运行 Jasmine 单元测试的参考,但我似乎无法让它工作,也找不到任何成功的代码。

我正在使用吞咽。我已经在我自己的机器上配置了所有东西,我可以运行“gulp test”并成功启动 Karma,然后通过 PhantomJS 运行测试。但是当我部署时,我在日志中看到以下内容:

我在 deploy.cmd 中使用以下内容运行测试:

这是 test.js gulp 任务:

这是 karma.conf.js:

而且我很确定问题不在于 PhantomJS 丢失,因为我之前没有 package.json 并且它给了我一个关于二进制文件丢失的错误。一旦我将它包含在 npm 安装中,我就开始收到上面的错误。

我看到一些论坛帖子表明 Azure 部署沙箱可能不允许与 PhantomJS 等端口进行通信,所以也许这就是问题所在。如果是这样,有没有办法在 Kudu 部署中实际运行 Jasmine 单元测试?

这很长并且有一些额外的调试代码,但这里是 deploy.cmd:

0 投票
0 回答
96 浏览

git - Kudu(IIS 上的 Git)无法创建应用程序

我下载 Kudu 项目以通过 Git 在 IIS 上部署,我已经关注了这篇文章https://github.com/projectkudu/kudu/wiki/Getting-started

但是当我尝试创建应用程序选项时,它永远不会结束处理请求。

我在Visual Studio上调试项目,发现下一句就失败了:

并将其发送到 catch 块并执行下一个,即永远不会结束的部分。

我尝试授予应用程序文件夹的读/写权限但没有成功。

0 投票
2 回答
4272 浏览

rest - Azure 网站 Kudu REST API - 身份验证

我正在尝试使用 PowerShell 通过 REST API 将更新的内容文件放到 Azure 网站上。但是,在向我提供凭据时,Invoke-RestMethod -Credentials我会返回标准 Azure 登录页面的 HTML。

如何从 PowerShell 使用 Kudu 进行身份验证?谢谢。

0 投票
2 回答
1423 浏览

asp.net - 无法将预编译、合并的 webapp 部署到 Azure

我正在尝试将 ASP.NET Web 应用程序部署到 Azure。它是混合的 Web 窗体、MVC 和 WebAPI,并且有大量的 aspx/ascx 文件,因此它们确实需要进行预编译,否则每次部署都会使网站运行一段时间缓慢。

我正在尝试通过 kudu 通过 SCM 与 GitHub 集成进行部署,并带有预编译的视图,所有这些都合并到一个程序集中。

注意:

  • Deploy 在禁用预编译的情况下工作正常。
  • 从 Visual Studio 部署工作正常
  • 如果我从 Azure 日志中复制 msbuild 命令、替换相关路径并在我的 Windows 8.1 机器上本地运行,则构建工作正常。

我已将高级预编译设置设置为:

  • 不允许预编译的站点可更新
  • 不发出调试信息
  • 将所有页面和控制输出合并到一个程序集 = AppViews.dll

这是 Azure 的.deployment文件

您注意到我将详细信息发送/v到“正常”以获取额外的诊断信息。

这是我在部署日志尾部获得的信息:

它看起来像 aspnet_compiler.exe 运行,但没有做它应该做的,这就是为什么 TempBuildDir 目录(应该是编译器的输出)对于 AspNetMerge 目标没有及时存在。与我的系统相比,该目录确实存在,包含标记 aspx/ascx/etc。文件、静态内容、PrecompiledApp.config 文件以及 bin 目录中的一大堆东西。

aspnet_compiler.exe 有一个-errorstack标志,但我不清楚如何让 MSBuild 仅通过.deployment文件添加它,或者即使该应用程序真的抛出错误。

我可以通过 Visual Studio 进行部署,但我真的很想利用 SCM 集成,所以我可以推送到我的 prod 分支并放手。有什么建议么?