如何使用GitHub Actions来保持您的Python RPA项目更新

12,487次阅读
没有评论

共计 3972 个字符,预计需要花费 10 分钟才能阅读完成。

您可能已经听说过 GitHub Actions。如果您还没有机会了解这个功能,请点击此链接查看相关文档。

为了利用这个功能在项目中执行各种操作的便捷性,我们创建了一个名为 BotCity Actions 的 GitHub Actions 函数,用于自动化机器人的更新,并将其放在此存储库中供您使用。

为什么要使用 BotCity Actions?

每当我们能够自动化一项过程以便简化我们的日常工作时,学习如何做以及在我们的上下文和需求中是否有意义就变得很有意义。所以,如果您有持续开发机器人的流程,为什么不简化您的日常工作并自动化业务和产品流程,以及部署和更新发布呢?

BotCity Actions 的工作原理是什么?

我们的函数可以自动更新、部署和发布到我们的编排器 BotCity Maestro,无需手动实现。事实上,如果您还不熟悉 BotCity Maestro 的 API,欢迎您查阅我们的文档以获取更好的使用体验。

将 BotCity Actions 应用到您的项目中

请按照以下步骤进行操作。在本示例中,我们假设您使用 Python 语言构建项目。当然,您可以随意使用其他语言,并且如果您有兴趣,我们的文档中还提供了 Java、JavaScript 和 TypeScript 项目配置的示例。

【0】项目配置

首先,您需要在您的项目中添加一个文件夹结构。首先,在您的项目根目录下创建一个名为 “.github” 的文件夹。在该文件夹中,再创建一个名为 “workflows” 的文件夹。

这个结构是直接来自 GitHub,它以这种方式解释了需要执行的函数。为了更好的理解,请务必查阅文档。

【1】创建第一个 workflow

在这一步中,我们假设您已经开发了机器人。但如果您需要帮助,可以查看我们文档中的链接。我们有一个非常有趣的教程,介绍了如何使用我们的开源框架开发机器人。

同时,我们还强调,您可以在我们的编排器中使用使用其他技术构建的机器人,比如 Java、JavaScript、Selenium、bash 脚本等等。

我们可以考虑一个触发条件是在 main 分支上进行 push 操作。这意味着每当主分支发生更改时,您希望在 BotCity Maestro 上进行新的部署以更新机器人。如果您考虑了 Git Flow 的一些规则和最佳实践,其中 main 分支是生产分支,它的工作就是这样。

在这一步中,在 workflows 文件夹中,我们将创建名为 update_bot.yml 的文件。您需要添加以下代码,以便考虑之前解释的在 main 分支上进行 push 操作时的更改:

name: Update the latest version bot on BotCity Maestro.

on:
    push:
      branches:
        - main

【2】通过 BotCity Actions 生成机器人

要了解在函数中需要添加什么,还需要了解部署机器人所需的内容。

例如,假设您使用我们的开源框架开发了自动化流程,我们需要满足以下先决条件:生成一个包含机器人代码和依赖项的压缩文件,可以通过执行脚本./build.sh 或./build.bat 来创建,具体取决于操作系统。该脚本位于从我们的桌面或 Web 框架模板创建的项目的根目录中。

因此,在我们的函数中,我们需要添加以下操作:

  • 在特定环境中运行(在这种情况下,我们选择了 Ubuntu,由于其易用性和快速性,但您可以分析您的特定情况并确定是否有重要的依赖项需要考虑,必要时可以在 Windows 或 MacOS 等环境中运行);

  • 授予 build.sh 文件执行权限;

  • 运行命令./build.sh

通过这些新操作,我们的 update_bot.yml 文件如下所示:

name: Update the latest version bot on BotCity Maestro.

on:
    push:
      branches:
        - main
jobs:
  update-latest:
    name: Update the latest version bot on BotCity Maestro.
    #  Running the latest version of Ubuntu.
    runs-on: ubuntu-latest
    steps:
      # Checking out the project.
      - uses: actions/checkout@v3
      # Implemented executable permission to `.sh`
      - name: Get permission to build.
        run: chmod +x build.sh
      # Execute to build.
      - name: Execute to build.
        run: ./build.sh

【3】使用函数

到目前为止,我们在 update_bot.yml 文件中添加的步骤序列是为了定义构建环境,并创建一个压缩文件,用于在 Maestro 上进行部署。然而,现在我们需要配置函数的步骤以便使用它。

在这种情况下,我们添加了一些重要的数据,以确保成功进行部署。这些数据包括:botId(机器人的 ID),technology(您应该提供您的机器人所使用的编程语言,在我们的例子中是 Python),以及 botPath(项目根目录中存放压缩文件的位置,用于在我们的编排平台上进行上传)。

name: Update the latest version bot on BotCity Maestro.

on:
  push:
    branches:
      - main
jobs:
  update-latest:
    name: Update the latest version bot on BotCity Maestro.
    #  Running the latest version of Ubuntu.
    runs-on: ubuntu-latest
    steps:
      # Checking out the project.
      - uses: actions/checkout@v3
      # Implemented executable permission to `.sh`
      - name: Get permission to build.
        run: chmod +x build.sh
      # Execute to build.
      - name: Execute to build.
        run: ./build.sh
      - name: Using a Botcity action.
        # Using the v1.0.0 version of botcity-action-bots
        uses: botcity-dev/botcity-action-bots@v1.0.0
        with:
          # Use the update function.
          update: true
          # Bot Id in Maestro.
          botId: 'example'
          # Technology utilized in bot
          technology: 'python'
          # Path from the root of the project where the generated .zip/.jar will be.
          botPath: './bot.zip'
        env:
          # These secrets must be configured in your repository.
          LOGIN: ${{secrets.LOGIN}}
          SERVER: ${{secrets.SERVER}}
          KEY: ${{secrets.KEY}}

请注意,我们还添加了一些环境变量,如 LOGIN、SERVER 和 KEY。这些是您能够使用 BotCity Maestro 的重要密码。因此,请记得在您的存储库中安全地配置这些密钥。

我在哪里可以找到更多提示?

文章来源地址 https://www.toymoban.com/diary/share/320.html

其他相关:

什么是 RPA?

了解代码、无代码和低代码自动化

聊天机器人、机器人和 RPA:它们有什么区别?

如何使用 GitHub Actions 来保持您的 Python RPA 项目更新

Hello World 的挑战:使用 BotCity 制作我的第一个 Python RPA 机器人

为什么在你的 RPA 项目中使用 Python?

使用 Python RPA 构建与桌面系统交互的机器人

到此这篇关于如何使用 GitHub Actions 来保持您的 Python RPA 项目更新的文章就介绍到这了, 更多相关内容可以在右上角搜索或继续浏览下面的相关文章,希望大家以后多多支持 TOY 模板网!

原文地址:https://www.toymoban.com/diary/share/320.html

如若转载,请注明出处:如若内容造成侵权 / 违法违规 / 事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

    正文完
     0
    Yojack
    版权声明:本篇文章由 Yojack 于1970-01-01发表,共计3972字。
    转载说明:
    1 本网站名称:优杰开发笔记
    2 本站永久网址:https://yojack.cn
    3 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
    4 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
    5 本站所有内容均可转载及分享, 但请注明出处
    6 我们始终尊重原创作者的版权,所有文章在发布时,均尽可能注明出处与作者。
    7 站长邮箱:laylwenl@gmail.com
    评论(没有评论)