将文件复制到Azure WebRole上的输出目录

时间:2017-09-21 10:10:01

标签: c# azure azure-web-roles

我们有一个天蓝色的Webrole,我们将其称为来自其他应用程序的API,将网页转换为呈现的字节数组,然后将其作为pdf附加到电子邮件中。我们使用ABCpdf执行此操作。

对于我们的最新项目,我们必须使用ABC(ABCGecko)的第二个引擎才能正确呈现我们的页面。 ABCGecko引擎需要在构建发生后手动复制到输出目录,它不会自动发生。

对于普通应用程序,这没有问题,我只是将所需的文件夹(使用ABC的任何人的XULRunner_38)复制到构建后的版本中,但我无法弄清楚如何为Azure WebRole执行此操作从我在谷歌搜索中看到的东西来看似乎没有任何帮助。

我假设我要么必须构建角色,然后在部署之前调整包,要么部署角色然后在之后复制文件夹。我无法弄清楚如何做到这一点。

如果有人有任何想法或者过去需要手动将文件复制到Azure Webrole,那么我将非常感谢您的帮助。另外我应该提一下,我们使用Visual Studio作为我们的IDE,并在那里发布,以防任何人都感兴趣。

1 个答案:

答案 0 :(得分:0)

Azure web(和worker)角色允许您定义启动任务,允许您调用脚本(例如powershell脚本,批处理文件),然后可以执行复制文件等操作。

哦,如果你不希望它在角色实例重新启动的情况下尝试复制,你需要做一些事情,比如在某个地方留下一个“面包屑”来表示你已经完成了你的初始化工作

希望做的事情是将内容手动复制到您的角色实例。这些实例更新的时刻(例如新的主机操作系统更新)或者它们被移动到另一个物理主机,您将丢失手动复制的任何文件。

这完全独立于任何IDE(除了对您编写的脚本语言的一般支持),因为启动任务将在每个Web角色实例启动时执行。

有关启动任务的更多详细信息,请here