65 lines
3.4 KiB
PHP
65 lines
3.4 KiB
PHP
<?php
|
|
|
|
return [
|
|
|
|
'terminal' => [
|
|
|
|
'window_title' => 'CluPilot server — terminal',
|
|
|
|
'open' => 'Open terminal',
|
|
'hint' => 'Opens a separate window with a root session on the CluPilot server.',
|
|
|
|
'stage' => [
|
|
'connecting' => [
|
|
'title' => 'Connecting to the CluPilot server',
|
|
'note' => 'The one-time ticket is being redeemed and the session set up.',
|
|
],
|
|
'ended' => [
|
|
'title' => 'Session ended',
|
|
'note' => 'The connection to the server was closed. A new attempt opens a fresh session.',
|
|
],
|
|
'lost' => [
|
|
'title' => 'No connection',
|
|
'note' => 'No session came about. Is the terminal service running?',
|
|
],
|
|
'rejected' => [
|
|
'title' => 'Ticket no longer valid',
|
|
'note' => 'A ticket lasts thirty seconds and exactly one session. This one had expired or was already redeemed — a new attempt issues a fresh one.',
|
|
],
|
|
'unreachable' => [
|
|
'title' => 'No session on the server',
|
|
'note' => 'The bridge did not reach a command line. Two reasons are by far the most likely: the server key is no longer in /root/.ssh/authorized_keys, or the server regenerated its host keys and the pinned fingerprint no longer matches. Running "sudo bash deploy/install-agent.sh" on the server clears up either. Which of the two it was is in the terminal service log; this window deliberately does not learn it.',
|
|
],
|
|
'service_down' => [
|
|
'title' => 'The terminal service is not running',
|
|
'note' => 'The console is up, the bridge behind it is not: nginx answers 502 for this path. On the server, "docker compose up -d terminal" helps. It shares the tunnel container\'s network namespace and has to be restarted whenever the tunnel is — otherwise it listens in a namespace that no longer exists while still reporting "healthy".',
|
|
],
|
|
'not_here' => [
|
|
'title' => 'There is no terminal under this name',
|
|
'note' => 'The bridge is a console tool and answers 404 on public hostnames — the same rule as /admin. Open the console under its own name.',
|
|
],
|
|
'retry' => 'Reconnect',
|
|
],
|
|
|
|
'problem' => [
|
|
'no_key' => [
|
|
'title' => 'No identity has been generated for the server',
|
|
'note' => 'The server terminal has its own SSH key, separate from the fleet key. It is generated under Settings.',
|
|
],
|
|
'not_installed' => [
|
|
'title' => 'The server is not set up for this yet',
|
|
'note' => 'The key exists but has not been installed on the server. Run "sudo bash deploy/install-agent.sh" there once — that adds it and records the server\'s fingerprint.',
|
|
],
|
|
'off_network' => [
|
|
'title' => 'Not from this address',
|
|
'note' => 'A root session on the server only opens from the management network or an allowed address. Anyone on the VPN gets through — the list is under Settings.',
|
|
],
|
|
'unknown' => [
|
|
'title' => 'The terminal cannot be opened right now',
|
|
'note' => 'Something went wrong while issuing the ticket. The incident is in the log; a new attempt is worth a try.',
|
|
],
|
|
],
|
|
],
|
|
|
|
];
|