All Projects → mxschmitt → Action Tmate

mxschmitt / Action Tmate

Licence: mit
Debug your GitHub Actions via SSH by using tmate to get access to the runner system itself.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Action Tmate

Use What Changed
A React hook and an easy to use babel-pugin to debug various React official hooks with dependency list
Stars: ✭ 171 (-76.02%)
Mutual labels:  hacktoberfest, debugging
Ssh Agent Helper
Use SSH keys from CMD, PowerShell, etc. on Windows
Stars: ✭ 31 (-95.65%)
Mutual labels:  hacktoberfest, ssh
Goph
🤘 The native golang ssh client to execute your commands over ssh connection. 🚀🚀
Stars: ✭ 734 (+2.95%)
Mutual labels:  hacktoberfest, ssh
Monday
⚡️ A dev tool for microservice developers to run local applications and/or forward others from/to Kubernetes SSH or TCP
Stars: ✭ 1,246 (+74.75%)
Mutual labels:  hacktoberfest, ssh
Wsl2 Ssh Pageant
bridge between windows pageant and wsl2
Stars: ✭ 155 (-78.26%)
Mutual labels:  hacktoberfest, ssh
Mole
CLI application to create ssh tunnels focused on resiliency and user experience.
Stars: ✭ 1,520 (+113.18%)
Mutual labels:  hacktoberfest, ssh
Post Mortems
A collection of postmortems. Sorry for the delay in merging PRs!
Stars: ✭ 8,772 (+1130.29%)
Mutual labels:  hacktoberfest, debugging
Nim
Streamline Your Node.js Debugging Workflow with Chromium (Chrome, Edge, More) DevTools.
Stars: ✭ 168 (-76.44%)
Mutual labels:  hacktoberfest, debugging
Shellhub
💻 ShellHub enables teams to easily access any Linux device behind firewall and NAT.
Stars: ✭ 686 (-3.79%)
Mutual labels:  hacktoberfest, ssh
Vssh
Go Library to Execute Commands Over SSH at Scale
Stars: ✭ 707 (-0.84%)
Mutual labels:  ssh
Derek
Reduce maintainer fatigue by automating GitHub
Stars: ✭ 714 (+0.14%)
Mutual labels:  hacktoberfest
Natasha
基于 Roslyn 的 C# 动态程序集构建库,该库允许开发者在运行时使用 C# 代码构建域 / 程序集 / 类 / 结构体 / 枚举 / 接口 / 方法等,使得程序在运行的时候可以增加新的模块及功能。Natasha 集成了域管理/插件管理,可以实现域隔离,域卸载,热拔插等功能。 该库遵循完整的编译流程,提供完整的错误提示, 可自动添加引用,完善的数据结构构建模板让开发者只专注于程序集脚本的编写,兼容 stanadard2.0 / netcoreapp3.0+, 跨平台,统一、简便的链式 API。 且我们会尽快修复您的问题及回复您的 issue.
Stars: ✭ 705 (-1.12%)
Mutual labels:  hacktoberfest
Mercurius
Implement GraphQL servers and gateways with Fastify
Stars: ✭ 704 (-1.26%)
Mutual labels:  hacktoberfest
Orm
A drop-in Doctrine ORM 2 implementation for Laravel 5+ and Lumen
Stars: ✭ 712 (-0.14%)
Mutual labels:  hacktoberfest
Grunt Cli
Grunt's command line interface.
Stars: ✭ 706 (-0.98%)
Mutual labels:  hacktoberfest
Iohook
Node.js global keyboard and mouse listener.
Stars: ✭ 714 (+0.14%)
Mutual labels:  hacktoberfest
Laravel Boilerplate
Laravel Boilerplate / Starter Kit with Gentelella Admin Theme
Stars: ✭ 704 (-1.26%)
Mutual labels:  hacktoberfest
Asimov
Automatically exclude development dependencies from Apple Time Machine backups
Stars: ✭ 705 (-1.12%)
Mutual labels:  hacktoberfest
Matrix Js Sdk
Matrix Client-Server SDK for JavaScript
Stars: ✭ 714 (+0.14%)
Mutual labels:  hacktoberfest
Fission
Fast and Simple Serverless Functions for Kubernetes
Stars: ✭ 6,646 (+832.12%)
Mutual labels:  hacktoberfest

Debug your GitHub Actions by using tmate

GitHub Actions GitHub Marketplace

This GitHub Action offers you a direct way to interact with the host system on which the actual scripts (Actions) will run.

Features

  • Debug your GitHub Actions by using SSH or Web shell
  • Continue your Workflows afterwards

Supported Operating Systems

  • Linux
  • macOS
  • Windows

Getting Started

By using this minimal example a tmate session will be created.

name: CI
on: [push]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/[email protected]
    - name: Setup tmate session
      uses: mxschmitt/[email protected]

To get the connection string, just open the Checks tab in your Pull Request and scroll to the bottom. There you can connect either directly per SSH or via a web based terminal.

GitHub Checks tab

Without sudo

By default we run the commands using sudo. If you get sudo: not found you can use the parameter below to execute the commands directly.

name: CI
on: [push]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/[email protected]
    - name: Setup tmate session
      uses: mxschmitt/[email protected]
      with:
        sudo: false

Timeout

By default the tmate session will remain open until the workflow times out. You can specify your own timeout in minutes if you wish to reduce GitHub Actions usage.

name: CI
on: [push]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/[email protected]
    - name: Setup tmate session
      uses: mxschmitt/[email protected]
      timeout-minutes: 15

Only on failure

By default a failed step will cause all following steps to be skipped. You can specify that the tmate session only starts if a previous step failed.

name: CI
on: [push]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/[email protected]
    - name: Setup tmate session
      if: ${{ failure() }}
      uses: mxschmitt/[email protected]

Use registered public SSH key(s)

By default anybody can connect to the tmate session. You can opt-in to install the public SSH keys that you have registered with your GitHub profile.

name: CI
on: [push]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/[email protected]
    - name: Setup tmate session
      uses: mxschmitt/[email protected]
      with:
        limit-access-to-actor: true

If the registered public SSH key is not your default private SSH key, you will need to specify the path manually, like so: ssh -i <path-to-key> <tmate-connection-string>.

Continue a workflow

If you want to continue a workflow and you are inside a tmate session, just create a empty file with the name continue either in the root directory or in the project directory by running touch continue or sudo touch /continue.

Connection string / URL is not visible

The connection string will be written in the logs every 5 seconds. For more information checkout issue #1.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].