GitHub Actions 调试工具:action-upterm 使用教程

GitHub Actions 调试工具:action-upterm 使用教程

action-upterm Debug your GitHub Actions via SSH by using upterm/tmux to get access to the runner system itself. action-upterm 项目地址: https://gitcode.com/gh_mirrors/ac/action-upterm

1. 项目介绍

action-upterm 是一个开源项目,旨在帮助开发者通过 SSH 连接到运行 GitHub Actions 的宿主机系统,从而能够直接交互和调试宿主机上的脚本。这个项目是基于 mxschmitt/action-tmate 的一个分支,使用 uptermtmux 来替代 tmate

2. 项目快速启动

以下是一个简单的示例,展示如何使用 action-upterm 创建一个 upterm 会话:

name: CI

on: [push]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Setup upterm session
        uses: lhotari/action-upterm@v1

启动工作流后,可以在 PR 的 "Checks" 选项卡中找到 SSH 连接字符串。

3. 应用案例和最佳实践

限制 SSH 访问

默认情况下,任何人都可以连接到 upterm 会话。为了限制访问,可以设置 limit-access-to-actorlimit-access-to-users

with:
  # 只允许触发工作流的用户访问
  limit-access-to-actor: true
  # 限制访问,仅允许以下 GitHub 用户访问
  limit-access-to-users: githubuser1,githubuser2

如果使用的 SSH 公钥不是默认的私钥,需要手动指定路径:

ssh -i <path-to-key> <upterm-connection-string>

使用自定义的 upterm 服务器

按照指南将 Upterm 服务器部署到 Heroku 或其他选项,然后通过 upterm-server 输入参数配置:

with:
  upterm-server: wss://YOUR_HEROKU_APP_URL

设置超时

如果希望在没有用户连接的情况下自动关闭服务器,可以设置 wait-timeout-minutes

with:
  wait-timeout-minutes: 5

继续工作流

如果希望在 upterm 会话中继续工作流,可以创建一个名为 continue 的空文件:

touch continue

或者

sudo touch /continue

关闭终端也会继续工作流,但这样将无法重新连接。

4. 典型生态项目

目前,action-upterm 项目主要集中在调试 GitHub Actions 的场景。在开源生态中,类似的项目可能包括:

  • 用于自动化的 GitHub Actions 相关工具和插件。
  • 提供远程调试能力的其他 SSH 相关工具。

这些项目通常旨在简化开发者的工作流程,提高代码质量,以及增强开源项目的可维护性。

action-upterm Debug your GitHub Actions via SSH by using upterm/tmux to get access to the runner system itself. action-upterm 项目地址: https://gitcode.com/gh_mirrors/ac/action-upterm

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

甄墨疆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

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

抵扣说明:

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

余额充值