shellhub-io/ShellHub CI Debug
Register the CI runner as an ephemeral ShellHub device for audited SSH debug access through your own gateway
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stale
- License
- None
Inputs
| name | description | required | default |
|---|---|---|---|
| server | ShellHub server address (e.g. https://cloud.shellhub.io) | yes | — |
| tenant-id | ShellHub namespace tenant ID. Required: the agent registers by tenant, and the API blocks API keys from listing namespaces. | yes | — |
| api-key | ShellHub API key with device accept/remove permission. Store as a secret. | yes | — |
| name | Device name. Defaults to a unique per-run name. | no | ci-${{ github.run_id }}-${{ github.run_attempt }} |
| tags | Comma-separated tags to apply to the device (for access scoping). Tag names must be alphanumeric and at least 3 characters. | no | github |
| public-key | SSH public key(s) to authorize for connecting, in authorized_keys format (one per line). Scoped to the device's tags. Leave empty to manage keys yourself in ShellHub. | no | "" |
| authorize-actor | Authorize the GitHub public keys of the user who triggered the run (from github.com/<actor>.keys), scoped to the device's tags. Use 'true' to require them (warns if the actor has none) or 'auto' for best-effort (silent if none). | no | false |
| ssh-username | Username (regexp) the authorized key may log in as. Defaults to any; the agent runs as root and can open a shell as any host user (root, the job user, etc.). Set a concrete value to lock it down and to have it shown in the printed SSHID. | no | .* |
| detached | If true, the job continues while the SSH session stays reachable. If false (default), the job blocks until you connect and disconnect, or you touch the continue file. | no | false |
| timeout | Blocking mode: seconds to wait for an SSH connection. Once connected, the job is held until you disconnect (or run 'sudo touch /continue'). 0 = wait indefinitely for a connection. | no | 0 |
| idle-timeout | Detached mode: seconds the post step waits at job end for an SSH connection before tearing down. Once connected, it holds until you disconnect. 0 = tear down immediately. | no | 0 |
| agent-version | Pin the agent version. Defaults to the server's reported version. | no | "" |
| install-url | Override the install script URL. Defaults to <server>/install.sh. | no | "" |
Outputs
| name | description |
|---|---|
| sshid | The device SSHID (namespace.device@host), without the username. |
| ssh-command | The full ssh command to connect, including the resolved username. |
| web-url | Browser URL that opens the runner's web terminal in the ShellHub console. |
| device-uid | The ephemeral device UID. |