ffdc: Add code to handle RHEL, UBUNTU, AIX remote hosts.

- Simplify remote host OS type in ffdc_confi;i.e. AIX_LINUX becomes AIX.
- Add code to handle RHEL, UBUNTU, AIX remote hosts.

Tests:
(1) First pass: successful (no error) code path with OPENHMC, RHEL, UBUNTU and AIX.
(@) Second pass: add tests to validate remote_host_type Vs. CLI input.

Signed-off-by: Peter D  Phan <peterp@us.ibm.com>
Change-Id: I18cd353950372c19b0ffc731caebdaeac71bf043
Signed-off-by: Peter D  Phan <peterp@us.ibm.com>
diff --git a/ffdc/collect_ffdc.py b/ffdc/collect_ffdc.py
index 49e89fa..eeeb79d 100644
--- a/ffdc/collect_ffdc.py
+++ b/ffdc/collect_ffdc.py
@@ -32,7 +32,9 @@
               show_default=True, help="YAML Configuration file listing commands and files for FFDC.")
 @click.option('-l', '--location', default="/tmp",
               show_default=True, help="Location to store collected FFDC data")
-def cli_ffdc(remote, username, password, ffdc_config, location):
+@click.option('-t', '--remote_type', default="OPENBMC",
+              show_default=True, help="OS type of the remote (targeting) host. OPENBMC, RHEL, UBUNTU, AIX")
+def cli_ffdc(remote, username, password, ffdc_config, location, remote_type):
     r"""
     Stand alone CLI to generate and collect FFDC from the selected target.
     """
@@ -40,7 +42,7 @@
     click.echo("\n********** FFDC (First Failure Data Collection) Starts **********")
 
     if input_options_ok(remote, username, password, ffdc_config):
-        thisFFDC = FFDCCollector(remote, username, password, ffdc_config, location)
+        thisFFDC = FFDCCollector(remote, username, password, ffdc_config, location, remote_type)
         thisFFDC.collect_ffdc()
 
         if not thisFFDC.receive_file_list: