您可能已经听说过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
其他相关:
如何使用GitHub Actions来保持您的Python RPA项目更新
Hello World 的挑战:使用 BotCity 制作我的第一个 Python RPA 机器人
使用Python RPA构建与桌面系统交互的机器人文章来源:https://www.toymoban.com/diary/share/320.html
到此这篇关于如何使用GitHub Actions来保持您的Python RPA项目更新的文章就介绍到这了,更多相关内容可以在右上角搜索或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!