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

您可能已经听说过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

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

领支付宝红包 赞助服务器费用
上一篇 2023年09月22日 16:26
如何在UEditor编辑器,添加图片删除功能
下一篇 2023年09月22日 17:04

相关文章

  • 使用GitHub Actions 来进行项目远程服务器部署

    由于项目源码是托管在github的,而部署是放在远程服务器上,并且使用nginx部署。 现在的部署流程时,需要更新时,在本地切换到master分支,执行构建操作,拿到构建出的dist目录,将其上传到远程服务的某个nginx目录,重启nginx服务。 基于以上,使用GitHub Actions做CI/CD流程。

    2024年02月14日
    浏览(44)
  • 04.使用 github actions+docker 自动部署前后端分离项目 zhontai (.net core+vue)

    Github Actions是什么?是 GitHub 提供的一种持续集成/持续部署(CI/CD)工作流程自动化服务,助力项目的自动化构建、测试和部署。 依托于平台,本文将分享使用 GitHub Actions 完成对一个.Net Core+Vue 的前后端分离项目 zhontai 的构建,并使用 docker 部署到云服务器(阿里云) 经过一番尝

    2024年02月11日
    浏览(56)
  • 如何使用CodeceptJS、Playwright和GitHub Actions构建端到端测试流水线

    介绍 端到端测试是软件开发的一个重要方面,因为它确保系统的所有组件都能正确运行。CodeceptJS是一个高效且强大的端到端自动化框架,与Playwright 结合使用时,它成为自动化Web、移动甚至桌面 (Electron.js) 应用程序比较好用的工具。 在本文中,作者探讨如何使用 CodeceptJS、

    2024年02月05日
    浏览(65)
  • 如何利用GitHub Actions自动化你的开发流程

    GitHub Actions 是一个强大的自动化工具,可以帮助开发者在 GitHub 仓库中自动化构建、测试和部署工作流程。使用 GitHub Actions,你可以在代码提交到 GitHub 时自动运行软件开发工作流程。以下是如何利用 GitHub Actions 自动化你的开发流程的基本步骤: ### 1. 理解 GitHub Actions 的基本

    2024年04月29日
    浏览(38)
  • 使用 Github Actions 工作流自动部署 Github Pages

    actions顾名思义就是一堆动作,是一个持续集成服务,持续集成包含了拉代码、运行测试、编译代码、登录远程服务器,发布到第三方服务等等的操作,GitHub将这些操作称为actions。 概念:Workflows, Events, Jobs, Actions, Runners Workflows 工作流 一个 Workflow 由多个 Jobs 组成 Events 定义哪

    2024年02月07日
    浏览(67)
  • Github Actions 执行Python定时任务(时区及缓存问题处理)

    文档地址:https://docs.github.com/en/actions 这两天一直在学习Github Actions,很是兴奋,才发现这么好的东西,相见恨晚。 它是什么呢,简单讲,就是让你的Github项目具备持续集成的能力,类似于传统工具jenkins,Gitlab的CI/CD功能等,但Github Actions更加强大。 我尝试简单实践了一下,

    2024年02月09日
    浏览(55)
  • python 使用selenium时如何保持浏览器内网站保持登陆状态

    user-data-dir的路径你可以这样找 打开自己的浏览器,进入chrome://version/ 页面内写到**“个人资料路径 ”**,后面有一个路径 把这个路径拷贝到add_argument的user-data-dir里面就可以了 另外还有一个坑:chrome driver和chrome版本必须要对应才能运行。 所以建议在项目期间不要随便升级浏

    2024年02月03日
    浏览(47)
  • 最佳实践-使用Github Actions来构建跨平台容器镜像

    公众号「架构成长指南」,专注于生产实践、云原生、分布式系统、大数据技术分享。 最近在写K8s的相关系列文章,因为有涉及到镜像构建,发现在Mac m1的Arm架构下构建的部分镜像,没法在X86架构下使用,不兼容。 尝试网上介绍的各种方式,都已失败告终,效果如下: 最终

    2024年02月05日
    浏览(51)
  • 10分钟 使用VitePress和GitHub Actions快速搭建发布个人博客

    VitePress官网Getting Started | VitePress VitePress 是一个静态站点生成器 (SSG),旨在构建快速、以内容为中心的网站。 Node.js (nodejs.org)Node版本18或更高版本 **使用 node -v **查看node版本 创建文件夹并进入到项目的目录 初始化项目 这里会带有设置向导 安装项目所需的 vitepress 依赖 在

    2024年02月03日
    浏览(62)
  • Python 进阶指南(编程轻松进阶):十二、使用 Git 组织您的代码项目

    原文:http://inventwithpython.com/beyond/chapter12.html 版本控制系统 是记录所有源代码变更的工具,使检索旧版本代码变得容易。把这些工具想象成复杂的 撤销 功能。例如,如果您替换了一个函数,但后来发现您更喜欢旧的函数,那么您可以将代码恢复到原始版本。或者,如果您发

    2023年04月22日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包