【问题标题】:CI / CD pipeline Template for logic app and azure function用于逻辑应用和天蓝色功能的 CI/CD 管道模板
【发布时间】:2023-03-13 20:10:01
【问题描述】:

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

  • 添加文件后,我会在 blob 存储上创建一个新 blob。

  • 从 SFTP 服务器中删除文件

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

现在,我有两个主要问题: 为了获得适合此工作流程的最佳 CI/CD pipeline,我是创建逻辑应用 from the portal 还是 from visual studio,为什么?

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

那么,如何创建 CI/CD 管道(请输入模板和步骤)?

Ps:我想添加 单元测试 来测试我的逻辑应用和 azure 函数是否正常工作,因此我想在构建定义中集成测试步骤

有关逻辑应用程序的更多详细信息,请参阅Stack overflow question,其中我详细说明了过程

这里是逻辑应用程序

【问题讨论】:

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


    【解决方案1】:

    请找出以下几点:

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

    【讨论】:

    • 感谢您的回答,但仍有很大一部分问题没有得到解答,您能否编辑您的答案以添加我可以使用的构建模板类型,如果您能指出一些示例对我来说?谢谢
    • 嗨@HaithemKAROUI 我也在设计类似的工作流程,并且和你一样困惑。如果您已经实现并做到了,请您指导我:stackoverflow.com/questions/66746354/…
    • @AvishekhBharati 正如我在那里检查的答案中提到的那样,最好的方法是通过 Visual Studio。将代码保存在 Visual Studio 中以及用于创建和管理逻辑应用的 ARM 脚本 对于 CD,您将需要一个资源创建任务步骤来在每个部署上创建一个逻辑应用。
    • @HaithemKAROUI 酷。那么你是如何安排你的项目的呢?是函数和逻辑应用的两个独立解决方案,还是同一个解决方案中的两个项目,还是同一个项目同时具有函数应用和逻辑应用的手臂模板?
    • @AvishekhBharati :您可以根据您想要的结构方式使用您提到的所有三个选项。
    猜你喜欢
    • 2020-09-01
    • 2018-09-07
    • 1970-01-01
    • 1970-01-01
    • 2022-11-23
    • 2021-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多