utilities/utilities/platform-util/debian
Kyle MacLeod 0ef10e4caf Add ipmicap.sh: ipmitool wrapper to capture output to file
This commit adds the script /usr/local/bin/ipmicap.sh to the system
controller. ipmicap.sh is a wrapper around ipmitool to capture
serial console logs to file. It is used by dcmanager code to capture
IPMI serial console logs when the rvmc_debug_level install property is 1
or higher.

The script has two modes:
1. Capture-only mode (--redirect)
2. Interactive mode

Capture-only mode is triggered by the --redirect option. This mode
is used during subcloud install/upgrade operations when the
rvmc_debug_level install value is > 0.
    - Uses --redirect and --force-deactivate options

Interactive mode is intended to be used for normal lab
or field troubleshooting operations. It can be used as a direct
replacement of ipmitool, where the session output is automatically
captured to file.

Note on log file:
The log file contains raw control characters.  It is best viewed using
'less' with the '-R/--RAW-CONTROL-CHARS' option.

Test Plan:

PASS:
- Test invocations of ipmicap.sh for both capture-only (--redirect) and
  interactive modes. Ensure output is properly captured to targeted file
  in both cases.
- Validate --force-deactivate behaviour: invokes 'sol deactivate' to
  close any existing sessions before invoking 'sol activate'
- Test various ipmicap.sh failure modes:
    - Invalid arguments
    - Improper credentials
    - Non-existent output directory for --file param
- Ensure --kill option works as intended. Ensure ipmitool sessions are
  always properly terminated.
    - Include cases where multiple ipmitool instances are running
      against the same host address. Ensure all are terminated.
- Validate running as both normal user and root
- Build platform-util package and ISO. Verify installation and validate
  that ipmicap.sh script is available at /usr/local/bin/ipmicap.sh, with
  proper executable permissions.

Story: 2010144
Task: 49147

Signed-off-by: Kyle MacLeod <kyle.macleod@windriver.com>
Change-Id: Ib2f61b47fae007b7c2f2eaabb61ad38dff7487e3
2023-12-18 10:26:15 -05:00
..
deb_folder Add ipmicap.sh: ipmitool wrapper to capture output to file 2023-12-18 10:26:15 -05:00
meta_data.yaml Update platform-util debian package ver based on git 2023-02-16 19:19:18 +00:00