CI / CD管道模板,用于逻辑应用程序和天蓝色函数

时间:2019-05-09 09:20:00

标签: azure-devops continuous-integration azure-pipelines azure-logic-apps continuous-delivery

我有一个logic app连接到sftp服务器(我在azure上创建的虚拟机),并在将文件添加到该sftp时执行操作:

  • 添加文件后,我在Blob存储上创建了一个新的Blob。

  • 从SFTP服务器删除文件

我还创建了一个blob trigger-based azure function,每次创建blob时,它都会处理一些操作(例如blob内容解密和解析)。 下一步将在我的逻辑应用程序中链接其他一些Azure函数执行(例如,执行后发送电子邮件和Azure函数等...)…

现在,我有两个主要问题: 为了使最合适的CI/CD pipeline适用于此工作流程,我是否创建逻辑应用from the portalfrom visual studio,为什么要这样做?

我是否将Azure函数和逻辑应用程序放在相同的解决方案/存储库中?同一项目?

然后,如何创建CI / CD管道(请键入模板和步骤)?

Ps:我想添加单元测试来测试我的逻辑应用程序和Azure函数是否正常运行,因此我想在构建定义中集成测试步骤。< / p>

有关逻辑应用程序的更多详细信息,请参阅此Stack overflow question,其中详细介绍了该过程

这是逻辑应用程序

Logic app image

1 个答案:

答案 0 :(得分:0)

请找到以下几点:

  1. 我建议使用Visual Studio。主要优点是它给您相同 设计人员的经验,您可以利用ARM模板和参数来 将您的逻辑应用程序稳健地部署到多个环境以进行开发,登台,过程等, 建立强大的CI / CD管道。它还为您提供了使用ARM模板和参数语法来存储任何敏感数据的Azure密钥库的优势。
    1. Visual Studio还提供您使用云连接到云的功能 资源管理器,您可以在其中模拟重新提交,运行历史记录等。
    2. 如果仅将Azure功能用于一个过程,则可以 将其置于相同的解决方案下,但保持Azure功能 单独的Repo为您提供了更大的灵活性,可重复使用,因此 其他应用程序也可以使用它。
    3. 您可以利用Speck流自动执行逻辑应用程序测试Automated tesing logic app with speckflow,此链接对此进行了详细说明。