pyserv.tui_helpers module

Pyserv TUI helper functions for picotui or similar.

pyserv.tui_helpers.get_env(name)[source]

Get environment data from selected (daemon) name.

Parameters:

name (str) – name of the daemon/server command

Returns:

full env settings

Return type:

Dict

pyserv.tui_helpers.get_log_lines(filename, is_tail=False, keep_offset=True, shorten=0, num_lines=10)[source]

Get N lines from a (log) file. Set shorten=0 to disable line-splitting. Check for empty (falsey) tail items before processing line data.

Parameters:
  • filename (str) – path to log file as a string

  • is_tail (bool) – read from the end of file

  • keep_offset (bool) – save offset file (keep track of lines that have already been read)

  • shorten (int) – split lines on spaces and keep the remainder

  • num_lines (int) – number of lines in tail output

Returns:

available log lines up to num_lines

Return type:

List[str | None]

pyserv.tui_helpers.get_w_env(env)[source]

Get UI widget settings from env values.

Parameters:

env (Dict) – default environ for selected daemon/server

Returns:

core env settings

Return type:

Dict

pyserv.tui_helpers.host_check(ip)[source]

Check a remote host using IP address; returns remote MAC address if host is UP. Requires root or setcap on POSIX platforms. Windows does not have this limitation.

Parameters:

ip (str) – IP address or resolvable hostname

Returns:

MAC address string

Return type:

str

pyserv.tui_helpers.tail(iterable, max_size)[source]

Create a tail queue with specified max number of items (log lines).

Parameters:
  • iterable (Iterable) – an iterable Python obj, ie, List or Tuple of strings

  • max_size (int) – max size of tail queue

Yields:

one item

Return type:

Generator