14 个稳定版本
1.0.62 | 2024 年 5 月 5 日 |
---|---|
1.0.61 | 2024 年 1 月 19 日 |
1.0.58 | 2023 年 12 月 11 日 |
1.0.54 | 2023 年 12 月 9 日 |
1.0.51 | 2023 年 12 月 7 日 |
#142 在 测试 中
150 每月下载量
1.5MB
475 行
GitHub Actions Runner
描述
gar
(GitHub Actions Runner) 是一个使用 Rust 编写的与 GitHub Actions 一起工作的命令行工具。它允许您直接从命令行运行 GitHub Actions 工作流。
安装
您可以从 GitHub 上的 发布页面 下载预编译的二进制文件。选择与您的操作系统和架构匹配的版本。
如果您想从源代码编译该项目,请按照以下步骤操作
git clone https://github.com/s00d/github-action-runner.git
cd gar
cargo build --release
这将创建一个位于 target/release
目录中的可执行文件 gar
。
crates.io
在安装 github-action-runner
包之前,您需要安装 Rust。Rust 是构建此包的编程语言。以下是安装 Rust 的步骤
-
打开终端或命令提示符。
-
访问 https://www.rust-lang.net.cn/ 上的官方 Rust 网站。
-
按照网站上的说明为您的操作系统下载和安装 Rust。
-
安装完成后,通过在终端中运行以下命令来验证 Rust 是否正确安装
rustc --version
您可以使用 cargo
工具安装 github-action-runner
包。请确保您已安装 Rust 编译器和 cargo
工具。
-
打开终端或命令提示符。
-
运行以下命令安装包
cargo install github-action-runner
用法
准备
在使用 gar
工具之前,您需要获取一个 GitHub 令牌。这可以在 GitHub 账户设置中完成。令牌应具有以下权限:
- 读取
code
和metadata
- 读取和写入
actions
、administration
和workflows
将令牌保存在项目根目录下的 .github_token
文件中,或将它设置为环境变量 GAR_TOKEN
。
工具首先会查找 GAR_TOKEN
环境变量。如果没有找到,它将接着查找 .github_token
文件。如果都没有找到,它将提示您手动输入令牌。
运行工作流程
要运行工作流程,只需执行 gar
文件。工具会根据本地 Git 仓库中的 origin
远程仓库自动确定所有者和仓库名称。然后,它会提示您从仓库中可用的列表中选择要运行的工作流程。
全局使用
要使 gar
可在全球范围内使用,您可以将其移动到 PATH
目录中。
在 Linux 上
sudo mv gar /usr/local/bin/
chmod +x /usr/local/bin/gar
在 macOS 上
sudo mv gar /usr/local/bin/
chmod +x /usr/local/bin/gar
xattr -cr /usr/local/bin/gar
在 Windows 上
- 在控制面板中打开 "系统"。
- 点击 "高级系统设置"。
- “高级”选项卡 > “环境变量”。
- 在“系统变量”部分,选择“Path” > “编辑”。
- “新建” > 输入 gar 可执行文件所在目录的路径。
- 现在您可以从命令行任何地方运行 gar。
现在您可以从命令行任何地方运行 gar
。
参数
参数 | 短名称 | 描述 | 默认值 |
---|---|---|---|
--ref |
-r |
将要运行动作的仓库分支的名称。 | 当前 Git 分支的名称 |
--owner |
-o |
动作所在的仓库的所有者。 | 当前 Git 仓库的所有者 |
--repo |
-p |
动作所在的仓库名称。 | 当前 Git 仓库的名称 |
--token |
-t |
用于身份验证的令牌。如果未提供,将使用 GAR_TOKEN 环境变量。 | 无 |
--inputs |
-i |
触发动作的事件的名称。 | 空字符串 |
请注意,所有参数都是可选的,如果没有提供,将使用默认值。
gar --ref <branch-name>
gar --owner <owner-name> --repo <repository-name>
gar --token <personal-access-token>
gar --inputs <input-name1>=<value1>,<input-name2>=<value2>
命令:History
gar history
命令提供了所选工作流程运行的历史记录。以下是如何使用它的示例:
$ gar history
运行此命令时,它将首先提示您从仓库中选择一个工作流程。选择工作流程后,它将获取并以表格格式显示所选工作流程的最后 10 次运行。
以下是输出可能的样子:
ID Branch Status Conclusion Created At Updated At Url
123456789 main completed success 2023-04-12T23:05:34Z 2023-04-12T23:06:00Z https://github.com/owner/repo/actions/runs/123456789
987654321 feature completed failure 2023-04-12T22:05:34Z 2023-04-12T22:06:00Z https://github.com/owner/repo/actions/runs/987654321
...
表中的每一行代表工作流程的单次运行。列提供以下信息:
ID
:运行的唯一标识符。Branch
:触发运行的分支。Status
:运行的状况(例如,completed
、in_progress
、queued
)。结论
:如果运行已完成,则表示运行结果(例如,成功
,失败
)。如果运行尚未完成,则此字段将显示N/A
。创建于
:运行创建的时间。更新于
:上次更新运行的时间。URL
:您可以在GitHub上查看运行的URL。
命令: details
details
命令显示GitHub Actions工作流运行的详细信息。
语法
gar details
描述
details
命令允许您查看GitHub Actions工作流运行的详细信息,包括运行ID、名称、显示标题、URL、状态、结论、分支、创建时间戳和更新时间戳等信息。此外,它还会检索并显示与运行相关的日志。
此命令提供了特定工作流运行的全面概述,使您能够分析其执行并解决可能发生的任何问题。
示例
gar details
帮助
有关可用的命令和选项的更多信息,您可以参阅包文档或在终端中运行github-action-runner --help。
操作示例
https://github.com/s00d/github-action-runner/blob/main/.github/workflows/runner.yml
Linux依赖
gcc-multilib g++-multilib pkg-config libssl-dev libasound2-dev
许可证
gar
根据MIT许可证分发。有关详细信息,请参阅 LICENSE
文件。
依赖关系
~25–64MB
~1M SLoC