Poe the Poet:一款强大的Python任务运行器

Poe the Poet:一款强大的Python任务运行器

【免费下载链接】poethepoet A task runner that works well with poetry. 【免费下载链接】poethepoet 项目地址: https://gitcode.com/gh_mirrors/po/poethepoet

项目介绍

Poe the Poet 是一款专为 Poetry 设计的任务运行器,但它不仅仅局限于 Poetry 用户。Poe the Poet 提供了一种简洁而强大的方式来管理你的项目任务,无论是简单的命令行操作,还是复杂的 Python 脚本执行,它都能轻松应对。通过在 pyproject.toml 文件中定义任务,Poe the Poet 让你可以轻松地运行、管理和自动化你的开发工作流程。

项目技术分析

Poe the Poet 的核心技术优势在于其灵活的任务定义和执行机制。它支持多种任务类型,包括命令行任务、Shell 脚本、Python 表达式以及对 Python 函数的引用。这些任务可以在 Poetry 的虚拟环境中运行,也可以在其他指定的环境中执行。此外,Poe the Poet 还提供了丰富的功能,如任务的自动补全、环境变量的引用、任务的自我文档化等,极大地提升了开发效率。

项目及技术应用场景

Poe the Poet 适用于各种需要自动化任务管理的场景,特别是在 Python 项目中。以下是一些典型的应用场景:

  • 持续集成/持续部署(CI/CD):在 CI/CD 流程中,Poe the Poet 可以自动化测试、构建和部署任务。
  • 开发环境管理:通过定义和运行开发环境中的各种任务,如数据库迁移、服务启动等,简化开发流程。
  • 自动化脚本:对于需要频繁执行的脚本任务,Poe the Poet 提供了一种简单的方式来管理和执行这些任务。
  • 多任务编排:通过任务的组合和依赖关系,Poe the Poet 可以轻松处理复杂的任务编排需求。

项目特点

  • 简洁的任务定义:通过在 pyproject.toml 中定义任务,Poe the Poet 提供了一种直观的方式来管理项目任务。
  • 灵活的任务类型:支持命令行任务、Shell 脚本、Python 表达式和 Python 函数引用,满足各种任务需求。
  • 自动补全:任务名称和全局选项的自动补全功能,提升命令行操作的效率。
  • 环境变量支持:任务可以引用环境变量,甚至在没有 Shell 的情况下也能正常工作。
  • 自我文档化:任务自带文档,运行 poe 命令即可查看所有任务的帮助信息。
  • 任务组合:支持任务的组合和依赖关系,可以轻松处理复杂的任务编排需求。
  • 与 Poetry 无缝集成:自动使用 Poetry 的虚拟环境,无需手动运行 poetry runpoetry shell

快速开始

  1. 通过 pipx 或其他方式安装 Poe the Poet:

    pipx install poethepoet
    
  2. pyproject.toml 中定义一些任务:

    [tool.poe.tasks]
    test         = "pytest --cov=my_app"                         # 简单的命令行任务
    serve.script = "my_app.service:run(debug=True)"              # Python 脚本任务
    tunnel.shell = "ssh -N -L 0.0.0.0:8080:$PROD:8080 $PROD &"   # Shell 脚本任务
    
  3. 通过 CLI 运行你的任务:

    $ poe test -v tests/unit # 额外的 CLI 参数会附加到基础命令中
    Poe => pytest --cov=my_app
    ...
    

如果你使用 Poetry,Poe the Poet 会自动使用 Poetry 管理的虚拟环境中的工具和库,无需手动运行 poetry runpoetry shell

Poe the Poet 也可以在没有 Poetry 的情况下使用。

贡献与支持

Poe the Poet 是一个开源项目,欢迎大家参与贡献。你可以在 讨论区 中提出你的想法,或者通过 提交问题 来帮助改进项目。更多贡献指南请参考 CONTRIBUTING

许可证

Poe the Poet 采用 MIT 许可证

【免费下载链接】poethepoet A task runner that works well with poetry. 【免费下载链接】poethepoet 项目地址: https://gitcode.com/gh_mirrors/po/poethepoet

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值