监视GitHub操作运行
项目描述
此包提供了一个命令,watch_gha_runs。它显示您当前分支上最新GitHub操作运行的状态。如果其中任何运行正在进行,它将重复刷新显示最新状态。
如果愿意,该名称可以读作,“观看?哈哈!”
安装
我建议使用pipx进行安装
$ pipx install watchgha
现在您有一个可用的命令 watch_gha_runs。它将检查当前目录的repo的所有GitHub远程,并找到当前分支的操作运行。
对于复杂的默认设置,您可以使用一个git别名。例如,这提供了类似的默认设置,但可以进行修改
[alias]
runs = "!f() { \
watch_gha_runs $@ \
\"$(git remote get-url origin)\" \
\"$(git rev-parse --abbrev-ref HEAD)\"; \
}; f"
现在 git runs 将显示您分支上当前运行的实时显示。
如果需要,您可以使用您的 .netrc 文件中的条目或通过设置环境变量 GITHUB_TOKEN 来对GitHub进行身份验证。
对于公共仓库,不需要身份验证。对于私有仓库,OAuth或经典令牌需要 repo 范围,而细粒度令牌需要“操作(读取)”仓库权限。
如果您使用GitHub Enterprise,可以将环境变量 GITHUB_SERVER_URL(默认:https://github.com)和 GITHUB_API_URL(默认:https://api.github.com)设置为与您的实例匹配。
使用方法
$ watch_gha_runs --help
Usage: watch_gha_runs [OPTIONS] [REPO] [BRANCH]
Watch GitHub Action runs.
Repeatedly gets the latest status and redraws the screen, until all
of the jobs are complete.
REPO is a local directory or GitHub URL, defaulting to ".".
BRANCH is defaulted from the git repo.
Options:
--sha TEXT The commit SHA to use. Must be a full SHA.
--poll INTEGER How many seconds between refreshes. [default: 15]
--wait-for-start Wait for jobs to start.
--only TEXT Words to limit the workflows shown. Only workflows
with these comma separated case insensitive
substrings in their names will be shown.
--help Show this message and exit.
显示
输出显示运行和作业。每个作业的当前步骤都会显示,并通过一行点号表示步骤数量,以及当前步骤是哪一个
fix: recent pypy3.9 now omits lines after jumps nedbat/fix-pypy-nightly 53923268e8f9 @08:32am
⏲ queued Tests view 4397455341
3.7 on ubuntu ↻ •••••••• Run tox for 3.7
3.8 on ubuntu ↻ •••••••• Run tox for 3.8
3.9 on ubuntu ↻ •••••••• Run tox for 3.9
3.10 on ubuntu ↻ •••••••• Run tox for 3.10
3.11 on ubuntu ↻ •••••••• Run tox for 3.11
pypy-3.7 on ubuntu ↻ •••••••• Run tox for pypy-3.7
pypy-3.9 on ubuntu ↻ •••••••• Run tox for pypy-3.9
3.7 on macos ↻ •••••••• Run tox for 3.7
3.8 on macos ↻ •••••••• Run tox for 3.8
3.9 on macos ⏲ queued
3.10 on macos ↻ •••••••• Run tox for 3.10
3.11 on macos ↻ •••••••• Run tox for 3.11
pypy-3.7 on macos ⏲ queued
pypy-3.9 on macos ⏲ queued
3.7 on windows ⏲ queued
3.8 on windows ⏲ queued
3.9 on windows ⏲ queued
3.10 on windows ↻ ••••••• Check out the repo
3.11 on windows ⏲ queued
pypy-3.7 on windows ⏲ queued
↻ in_progress Quality view 4397455342
Check types ✓ success
Build docs ↻ ••••••• Tox doc
Pylint etc ↻ ••••••• Tox lint
↻ in_progress Python Nightly Tests view 4397455346
Python 3.10-dev ↻ •••◦•••• Run tox
Python 3.11-dev ↻ •••◦•••• Run tox
Python 3.12-dev ↻ •••◦•••• Run tox
Python pypy-3.7-nightly ↻ ••◦•••••• Run tox
Python pypy-3.8-nightly ↻ ••◦•••••• Run tox
Python pypy-3.9-nightly ↻ ••◦•••••• Run tox
一旦所有子作业都成功,作业和运行将折叠
fix: recent pypy3.9 now omits lines after jumps nedbat/fix-pypy-nightly 53923268e8f9 @08:32am ✓ success Tests view 4397455341 ↻ in_progress Quality view 4397455342 Check types ✓ success Build docs ↻ ••••••• Tox doc Pylint etc ✓ success ✗ failure Python Nightly Tests view 4397455346 Python 3.10-dev ✓ success Python 3.11-dev ✓ success Python 3.12-dev ✓ success Python pypy-3.7-nightly ✓ success Python pypy-3.8-nightly ✓ success Python pypy-3.9-nightly ✗ failure Run tox
一旦所有运行完成,命令结束,显示最终状态
fix: recent pypy3.9 now omits lines after jumps nedbat/fix-pypy-nightly [push] 53923268e8f9 @08:32am ✓ success Tests view 4397455341 ✓ success Quality view 4397455342 ✗ failure Python Nightly Tests view 4397455346 Python 3.10-dev ✓ success Python 3.11-dev ✓ success Python 3.12-dev ✓ success Python pypy-3.7-nightly ✓ success Python pypy-3.8-nightly ✓ success Python pypy-3.9-nightly ✗ failure Run tox
变更日志
2.3.2 – 2024-06-23
GITHUB_SERVER_URL 类似于 “git@git.mydomain.com” 现在已正确解析,关闭 问题 22。
为等待状态的作业添加了停止标志表情符号。
大多数致命错误现在会导致状态码为 1。之前错误地是 2。
2.3.1 – 2024-05-25
具有许多作业的工作流程可能会被截断。仍然有一个 100 作业的限制,但比之前的 30 个作业限制要好。
2.3.0 – 2024-04-10
通过 GITHUB_SERVER_URL 和 GITHUB_API_URL 环境变量支持 GitHub Enterprise。感谢,Colin Marquardt。
修复:在不寻常的情况下,GitHub 可以返回对作业步骤的奇怪状态。现在这些状态以问号显示。
2.2.2 – 2024-02-03
修复:步骤可以处于“挂起”状态,现在以点号代替“挂起”显示。
2.2.1 – 2024-01-14
2.2.0 — 2024-01-11
2.1.1 — 2023-07-05
隐式 .netrc 认证停止工作,但现在已修复。感谢,Rob Weir。
2.0.0 — 2023-07-02
默认轮询间隔现在是 15 秒。
现在从当前的 git 仓库默认 GitHub 仓库位置和分支名称。仓库位置可以是本地目录或 GitHub URL。关闭 问题 7。
新选项 --wait-for-start 将使 watch_gha_runs 等待作业开始。这修复了使用 watch_gha_runs 程序化的问题:它可以在任何新运行开始之前检查运行状态,然后简单地报告最后一组运行的完成状态,然后退出。
修复:如果无法解析 .yml 工作流程文件,则其“运行”会持续显示在运行列表中,时间过长。现在这些不可解析的运行根本不会显示。
修复:跳过的运行被视为已完成,不需要显示其作业。
错误报告得到改进,在某些情况下移除了不需要的嘈杂跟踪,并为 GitHub API 错误提供了更多信息。关闭 问题 8。
在失败时尝试更多操作,修复 问题 10。
使用 Ctrl-C 中断将设置退出状态为 2。
1.0.0 — 2023-04-15
选项 --poll 设置刷新之间的秒数。
现在对 GitHub 的请求是异步进行的,加快了执行速度。
GitHub 的重定向(例如,如果仓库已重命名或移动)将透明地跟随。
如果任何运行失败,退出码现在是 1,如果所有运行都成功,则是 0。
长行不再被截得太短。
0.6.0 — 2023-03-22
可以通过在命令行中使用 --sha 通过提交 SHA 选择运行。
如果 GitHub 返回“502 - Bad Gateway”,请重试。
0.5.0 — 2023-03-15
如果已定义,使用环境变量 GITHUB_TOKEN 进行身份验证。
0.0.2 — 2023-03-14
支持更多形式的仓库 URL:例如 git@github.com:,不带 .git 等。
如果无法解析仓库 URL,将提供更好的错误信息。
0.0.1 — 2023-03-13
第一个版本
开发中
代码有些混乱且没有文档,也没有测试。如果你想更改代码,请打开一个问题并讨论。
贡献者
Ned Batchelder
Bill Mill
Hugo van Kemenade
Rob Weir
背景故事
这最初是为 gh run 命令 的输出 gh run list 创建的一个格式化器。然后我尝试了 gh run watch,但对其选择不满意。所以我写了自己的。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。
源代码分布
构建分布
watchgha-2.3.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1b513675982d4f8ae06d05271a25225a845b9ded414081a8d6b18d6ea7aaeeef |
|
MD5 | fc40e2da440d2b3cd0b15d687e6a8b44 |
|
BLAKE2b-256 | 361d77785e632062ea8a5d86b53e6bc254f1bb04145d7aece82ebf9f977f716e |
watchgha-2.3.2-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 673249a855f6e91c9fc60e91fc50baf5f2959a0ae193317be05211fef9af7551 |
|
MD5 | 76844a654f3ce1323efbe8f584900df9 |
|
BLAKE2b-256 | 255e0e49fd6a709ca9225d1533fdbe194de4542e57c92de793c5fbb2999c9f83 |