Remove legacy test suites and move the SLP suite

Changes:
    - As part of the legacy test cleanup, REST test suites
      are removed and the SLP suite moved to security.

Tested:
   - NA

Change-Id: I0a44708981332b6cca35b7cef7480de8e8e68485
Signed-off-by: George Keishing <gkeishin@in.ibm.com>
diff --git a/extended/code_update/bmc_multi_code_update.robot b/extended/code_update/bmc_multi_code_update.robot
deleted file mode 100644
index 6c8728e..0000000
--- a/extended/code_update/bmc_multi_code_update.robot
+++ /dev/null
@@ -1,61 +0,0 @@
-*** Settings ***
-Documentation    Verify that the BMC boots between code updates of different
-...              BMC version. Verify with N, the current version, downgrade
-...              and verify with N-1, update and verify N again, and finally
-...              update and verify with N+1.
-
-Library           ../../lib/code_update_utils.py
-Library           ../../lib/gen_robot_valid.py
-Variables         ../../data/variables.py
-Resource          ../../lib/boot_utils.robot
-Resource          ../../lib/code_update_utils.robot
-Resource          ../../lib/openbmc_ffdc.robot
-
-Suite Setup       Suite Setup Execution
-
-Test Teardown     FFDC On Test Case Fail
-
-*** Variables ***
-
-${QUIET}                        ${1}
-${IMAGE_FILE_PATH}              ${EMPTY}
-${N_MINUS_ONE_IMAGE_FILE_PATH}  ${EMPTY}
-${N_PLUS_ONE_IMAGE_FILE_PATH}   ${EMPTY}
-${SKIP_UPDATE_IF_ACTIVE}        false
-
-*** Test Cases ***
-
-BMC Multi Code Update
-    [Documentation]  Do four code updates in a row. Update to N, N-1, N, and
-    ...              then N+1.
-    [Tags]  BMC_Multi_Code_Update
-    [Template]  Code Update And Reboot BMC
-
-    # Image File Path
-    ${IMAGE_FILE_PATH}
-    ${N_MINUS_ONE_IMAGE_FILE_PATH}
-    ${IMAGE_FILE_PATH}
-    ${N_PLUS_ONE_IMAGE_FILE_PATH}
-
-
-*** Keywords ***
-
-Suite Setup Execution
-    [Documentation]  Do test suite setup tasks.
-
-    Valid Value  IMAGE_FILE_PATH
-    Valid Value  N_MINUS_ONE_IMAGE_FILE_PATH
-    Valid Value  N_PLUS_ONE_IMAGE_FILE_PATH
-
-
-Code Update And Reboot BMC
-    [Documentation]  Update the given image, and then verify update.
-    [Arguments]  ${image_file_path}
-
-    # Description of argument(s):
-    # image_file_path   Path to the bmc image file.
-
-    Upload And Activate Image  ${image_file_path}
-    ...  skip_if_active=${SKIP_UPDATE_IF_ACTIVE}
-    OBMC Reboot (off)  stack_mode=normal
-    Verify Running BMC Image  ${image_file_path}
diff --git a/extended/code_update/bmc_recoverable_error_test.robot b/extended/code_update/bmc_recoverable_error_test.robot
deleted file mode 100644
index 85f2416..0000000
--- a/extended/code_update/bmc_recoverable_error_test.robot
+++ /dev/null
@@ -1,65 +0,0 @@
-*** Settings ***
-Documentation   Test errors and changes in the environment that BMC code
-...             update should recover from or not be effected by.
-
-Resource        ../../lib/code_update_utils_serial.robot
-Resource        ../../lib/openbmc_ffdc.robot
-
-Force Tags     BMC_Update_Recoverable_Error
-
-Suite Setup     Suite Setup Execution
-
-Test Setup      Test Setup Execution
-Test Teardown   FFDC On Test Case Fail
-
-*** Variables ***
-
-${QUIET}                        ${1}
-${IMAGE_FILE_PATH}              ${EMPTY}
-
-# In order to test the code update features of the image at ${IMAGE_FILE_PATH},
-# we need another BMC image to update to.
-${ALTERNATE_IMAGE_FILE_PATH}    ${EMPTY}
-
-*** Test Cases ***
-
-Reset Network During BMC Code Update
-    [Documentation]  Disable and re-enable the network while doing a BMC
-    ...              code update.
-    [Tags]  Reset_Network_During_BMC_Code_Update
-    [Template]  Reset Network Interface During Code Update
-
-    # Image File Path   Reboot
-    ${ALTERNATE_IMAGE_FILE_PATH}  ${TRUE}
-
-
-Reboot BMC During BMC Image Activation
-    [Documentation]  Attempt to reboot the BMC while an image is activating,
-    ...              checking that the reboot has no effect.
-    [Tags]  Reboot_BMC_During_BMC_Image_Activation
-
-    Attempt To Reboot BMC During Image Activation  ${ALTERNATE_IMAGE_FILE_PATH}
-    OBMC Reboot (off)
-
-
-*** Keywords ***
-
-Suite Setup Execution
-    [Documentation]  Do setup tasks for recoverable errors.
-
-    Should Not Be Empty  ${IMAGE_FILE_PATH}
-    ...  msg=IMAGE_FILE_PATH should be set.
-    Should Not Be Empty  ${ALTERNATE_IMAGE_FILE_PATH}
-    ...  msg=ALTERNATE_IMAGE_FILE_PATH should be set.
-    Should Not Be Empty  ${OPENBMC_SERIAL_HOST}
-    ...  msg=OPENBMC_SERIAL_HOST should be set.
-    Should Not Be Empty  ${OPENBMC_SERIAL_PORT}
-    ...  msg=OPENBMC_SERIAL_PORT should be set.
-
-
-Test Setup Execution
-    [Documentation]  Do setup tasks for every test case.
-
-    Upload And Activate Image  ${IMAGE_FILE_PATH}  skip_if_active=true
-    OBMC Reboot (off)
-    Delete All Non Running BMC Images
diff --git a/extended/code_update/host_multi_code_update.robot b/extended/code_update/host_multi_code_update.robot
deleted file mode 100644
index cb68a33..0000000
--- a/extended/code_update/host_multi_code_update.robot
+++ /dev/null
@@ -1,65 +0,0 @@
-*** Settings ***
-Documentation    Verify that the host boots between code updates of different
-...              PNOR version. Verify with N, the current version, downgrade
-...              and verify with N-1, update and verify N again, and finally
-...              update and verify with N+1.
-
-Library           ../../lib/code_update_utils.py
-Variables         ../../data/variables.py
-Resource          ../../lib/boot_utils.robot
-Resource          ../../lib/code_update_utils.robot
-Resource          ../../lib/openbmc_ffdc.robot
-
-Suite Setup       Suite Setup Execution
-
-Test Teardown     FFDC On Test Case Fail
-
-*** Variables ***
-
-${QUIET}                        ${1}
-${IMAGE_FILE_PATH}              ${EMPTY}
-${N_MINUS_ONE_IMAGE_FILE_PATH}  ${EMPTY}
-${N_PLUS_ONE_IMAGE_FILE_PATH}   ${EMPTY}
-
-*** Test Cases ***
-
-Host Multi Code Update
-    [Documentation]  Do four code updates in a row. Update to N, N-1, N, and
-    ...              then N+1.
-    [Tags]  Host_Multi_Code_Update
-    [Template]  Code Update And Power On Host
-
-    # Image File Path
-    ${IMAGE_FILE_PATH}
-    ${N_MINUS_ONE_IMAGE_FILE_PATH}
-    ${IMAGE_FILE_PATH}
-    ${N_PLUS_ONE_IMAGE_FILE_PATH}
-
-
-*** Keywords ***
-
-Suite Setup Execution
-    [Documentation]  Do test suite setup tasks.
-
-    Should Not Be Empty  ${IMAGE_FILE_PATH}  msg=Must set IMAGE_FILE_PATH.
-    Should Not Be Empty  ${N_MINUS_ONE_IMAGE_FILE_PATH}
-    ...  msg=Must set N_MINUS_ONE_IMAGE_FILE_PATH.
-    Should Not Be Empty  ${N_PLUS_ONE_IMAGE_FILE_PATH}
-    ...  msg=N_PLUS_ONE_IMAGE_FILE_PATH.
-    Should Not Be Empty  ${OS_HOST}  msg=Must set OS_HOST.
-    Should Not Be Empty  ${OS_USERNAME}  msg=Must set OS_USERNAME.
-    Should Not Be Empty  ${OS_PASSWORD}  msg=Must set OS_PASSWORD.
-
-
-Code Update And Power On Host
-    [Documentation]  Shutdown the host, update to the given image, and then
-    ...              verify that the host is able to power on.
-    [Arguments]  ${image_file_path}
-
-    # Description of argument(s):
-    # image_file_path   Path to the host image file.
-
-    REST Power Off  stack_mode=skip  quiet=${1}
-    Delete All PNOR Images
-    Upload And Activate Image  ${image_file_path}
-    REST Power On
diff --git a/extended/code_update/host_recoverable_error_test.robot b/extended/code_update/host_recoverable_error_test.robot
deleted file mode 100644
index 9e50317..0000000
--- a/extended/code_update/host_recoverable_error_test.robot
+++ /dev/null
@@ -1,56 +0,0 @@
-*** Settings ***
-Documentation   Test errors and changes in the environment that BMC code
-...             update should recover from or not be effected by.
-
-Resource        ../../lib/code_update_utils_serial.robot
-Resource        ../../lib/openbmc_ffdc.robot
-
-Force Tags      Host_Update_Recoverable_Error
-
-Suite Setup     Suite Setup Execution
-
-Test Setup      Test Setup Execution
-Test Teardown   FFDC On Test Case Fail
-
-*** Variables ***
-
-${QUIET}            ${1}
-${IMAGE_FILE_PATH}  ${EMPTY}
-
-*** Test Cases ***
-
-Reboot BMC During Host Code Update
-    [Documentation]  Attempt to reboot the BMC while an image is activating,
-    ...              checking that the reboot has no effect.
-    [Tags]  Reboot_BMC_During_Host_Code_Update
-
-    Attempt To Reboot BMC During Image Activation  ${IMAGE_FILE_PATH}
-
-
-Reset Network During Host Code Update
-    [Documentation]  Disable and re-enable the network while doing a PNOR
-    ...              code update.
-    [Tags]  Reset_Network_During_Host_Code_Update
-    [Template]  Reset Network Interface During Code Update
-
-    # Image File Path   Reboot
-    ${IMAGE_FILE_PATH}  ${FALSE}
-
-
-*** Keywords ***
-
-Suite Setup Execution
-    [Documentation]  Do setup tasks for recoverable errors.
-
-    Should Not Be Empty  ${IMAGE_FILE_PATH}
-    ...  msg=IMAGE_FILE_PATH should be set.
-    Should Not Be Empty  ${OPENBMC_SERIAL_HOST}
-    ...  msg=OPENBMC_SERIAL_HOST should be set.
-    Should Not Be Empty  ${OPENBMC_SERIAL_PORT}
-    ...  msg=OPENBMC_SERIAL_PORT should be set.
-
-
-Test Setup Execution
-    [Documentation]  Do setup tasks for every test case.
-
-    Delete All PNOR Images
diff --git a/extended/code_update/ipmi_bmc_code_update.robot b/extended/code_update/ipmi_bmc_code_update.robot
deleted file mode 100644
index bf0028a..0000000
--- a/extended/code_update/ipmi_bmc_code_update.robot
+++ /dev/null
@@ -1,52 +0,0 @@
-*** Settings ***
-Documentation     Test BMC code update on a target BMC.
-...               Execution Command:
-...               python -m robot -v OPENBMC_HOST:<hostname> -v OS_HOST:<OS IP>
-...               -v OS_USERNAME:<OS username> -v OS_PASSWORD:<OS password>
-...               -v IMAGE_FILE_PATH:<path/*.tar> ipmi_bmc_code_update.robot
-
-Resource          ../../lib/code_update_utils.robot
-Resource          ../../lib/ipmi_client.robot
-
-Suite Setup       Suite Setup Execution
-
-
-*** Variables ***
-
-${IMAGE_FILE_PATH}                ${EMPTY}
-${SKIP_UPDATE_IF_ACTIVE}          false
-
-
-*** Test Cases ***
-
-Verify IPMI Disable Policy Post BMC Code Update
-    [Documentation]  Disable IPMI, update BMC and verify post-update.
-    [Tags]  Verify_IPMI_Disable_Policy_Post_BMC_Code_Update
-    [Teardown]  Run Keywords  FFDC On Test Case Fail
-    ...  AND  Run Inband IPMI Standard Command  lan set 1 access on
-
-    Run Inband IPMI Standard Command  lan set 1 access off
-    Run Keyword and Expect Error  *Unable to establish IPMI*
-    ...  Run External IPMI Standard Command  lan print
-
-    Upload And Activate Image  ${IMAGE_FILE_PATH}
-    ...  skip_if_active=${SKIP_UPDATE_IF_ACTIVE}
-    OBMC Reboot (off)
-    Verify Running BMC Image  ${IMAGE_FILE_PATH}
-
-    Run Keyword and Expect Error  *Unable to establish IPMI*
-    ...  Run External IPMI Standard Command  lan print
-
-
-*** Keywords ***
-
-Suite Setup Execution
-    [Documentation]  Do code update test case setup.
-
-    # Check if image file is provided.
-    OperatingSystem.File Should Exist  ${IMAGE_FILE_PATH}
-
-    # - Clean up all existing BMC dumps.
-    Run Key  Delete All Dumps  ignore=1
-    Run Keyword And Ignore Error  Smart Power Off
-
diff --git a/extended/code_update/test_field_mode.robot b/extended/code_update/test_field_mode.robot
deleted file mode 100644
index 44b0795..0000000
--- a/extended/code_update/test_field_mode.robot
+++ /dev/null
@@ -1,71 +0,0 @@
-*** Settings ***
-Documentation       Test BMC field mode.
-
-Variables           ../../data/variables.py
-Resource            ../../lib/boot_utils.robot
-Resource            ../../lib/rest_client.robot
-Resource            ../../lib/openbmc_ffdc.robot
-Resource            ../../lib/code_update_utils.robot
-
-Suite Setup         Suite Setup Execution
-Suite Teardown      Suite Teardown Execution
-
-Test Teardown       FFDC On Test Case Fail
-
-*** Test Cases ***
-
-Verify Software Field Mode
-    [Documentation]  Verify software field mode is set.
-    [Tags]  Verify_Software_Field_Mode
-
-    # After running, /xyz/openbmc_project/software should look like this:
-    # /xyz/openbmc_project/software
-    # {
-    #     "FieldModeEnabled": 1,
-    #     "associations": [
-    #         [
-    #             "active",
-    #             "software_version",
-    #             "/xyz/openbmc_project/software/fcf8e182"
-    #         ],
-    #         [
-    #             "functional",
-    #             "functional",
-    #             "/xyz/openbmc_project/software/fcf8e182"
-    #         ]
-    #     ]
-    # }
-
-    Enable Field Mode And Verify Unmount
-
-
-Attempt To Disable Field Mode Via REST And Verify
-    [Documentation]  Attempt to disable field mode with REST and verify that
-    ...              it remains enabled.
-    [Tags]  Attempt_To_Disable_Field_Mode_Via_REST_And_Verify
-
-    # This test case doesn't actually disable field mode. It attempts to, but
-    # verifies that the FieldModeEnabled property keeps its value of '1'
-    # after trying to set it to '0'. Field mode is disabled in suite teardown.
-
-    ${args}=  Create Dictionary  data=${0}
-    Write Attribute  ${SOFTWARE_VERSION_URI}  FieldModeEnabled
-    ...  verify=${TRUE}  expected_value=${1}  data=${args}
-
-
-*** Keywords ***
-
-Suite Setup Execution
-    [Documentation]  Do suite setup tasks.
-
-    # Check that /usr/local is mounted
-    BMC Execute Command  [ -d "/usr/local/share" ]
-
-
-Suite Teardown Execution
-    [Documentation]  Do suite teardown tasks.
-
-    # 1. Disable field mode
-    # 2. Check that /usr/local is mounted
-
-    Disable Field Mode And Verify Unmount
diff --git a/extended/code_update/test_image_upload.robot b/extended/code_update/test_image_upload.robot
deleted file mode 100644
index cc1341b..0000000
--- a/extended/code_update/test_image_upload.robot
+++ /dev/null
@@ -1,268 +0,0 @@
-*** Settings ***
-Documentation         Test upload image with both valid and invalid images.
-...                   This test expects there to be bad image tarballs named
-...                   pnor_bad_manifest.tar, pnor_no_image.tar,
-...                   bmc_bad_manifest.tar, and bmc_no_image.tar on the TFTP
-...                   server and in the BAD_IMAGES_DIR_PATH directory.
-...                   Execution Method :
-...                   python -m robot -v OPENBMC_HOST:<hostname>
-...                   -v TFTP_SERVER:<TFTP server IP>
-...                   -v PNOR_TFTP_FILE_NAME:<filename.tar>
-...                   -v BMC_TFTP_FILE_NAME:<filename.tar>
-...                   -v PNOR_IMAGE_FILE_PATH:<path/*.tar>
-...                   -v BMC_IMAGE_FILE_PATH:<path/*.tar>
-...                   -v BAD_IMAGES_DIR_PATH:<path> test_image_upload.robot
-
-Resource              ../../lib/connection_client.robot
-Resource              ../../lib/rest_client.robot
-Resource              ../../lib/openbmc_ffdc.robot
-Library               Collections
-Library               String
-Library               OperatingSystem
-Library               ../../lib/code_update_utils.py
-
-Test Teardown  Upload Image Teardown
-
-Force Tags  Upload_Test
-
-*** Variables ***
-${timeout}            10
-${QUIET}              ${1}
-
-*** Test Cases ***
-
-Upload Host Image Via REST
-    [Documentation]  Upload a PNOR image via REST.
-    [Tags]  Upload_Host_Image_Via_REST
-    [Template]  Upload Image Via REST And Verify Success
-
-    # Image File Path
-    ${PNOR_IMAGE_FILE_PATH}
-
-
-Upload BMC Image Via REST
-    [Documentation]  Upload a BMC image via REST.
-    [Tags]  Upload_BMC_Image_Via_REST
-    [Template]  Upload Image Via REST And Verify Success
-
-    # Image File Path
-    ${BMC_IMAGE_FILE_PATH}
-
-
-Upload Host Image Via TFTP
-    [Documentation]  Upload a PNOR image via TFTP.
-    [Tags]  Upload_Host_Image_Via_TFTP
-    [Template]  Upload Image Via TFTP And Verify Success
-
-    # Image File Path
-    ${PNOR_TFTP_FILE_NAME}
-
-
-Upload BMC Image Via TFTP
-    [Documentation]  Upload a BMC image via TFTP
-    [Tags]  Upload_BMC_Image_Via_TFTP
-    [Template]  Upload Image Via TFTP And Verify Success
-
-    # Image File Path
-    ${BMC_TFTP_FILE_NAME}
-
-
-Upload Host Image With Bad Manifest Via REST
-    [Documentation]  Upload a PNOR image with a bad MANIFEST via REST and
-    ...              verify that the BMC does not unpack it.
-    [Tags]  Upload_Host_Image_With_Bad_Manifest_Via_REST
-    [Template]  Upload Bad Image Via REST And Verify Failure
-
-    # Image File Name
-    pnor_bad_manifest.tar
-
-
-Upload Host Image With No Squashfs Via REST
-    [Documentation]  Upload a PNOR image with just a MANIFEST file via REST
-    ...              and verify that the BMC does not unpack it.
-    [Tags]  Upload_Host_Image_With_No_Squashfs_Via_REST
-    [Template]  Upload Bad Image Via REST And Verify Failure
-
-    # Image File Name
-    pnor_no_image.tar
-
-
-Upload BMC Image With Bad Manifest Via REST
-    [Documentation]  Upload a BMC image with a bad MANFIEST file via REST and
-    ...              verify that the BMC does not unpack it.
-    [Tags]  Upload_BMC_Image_With_Bad_Manifest_Via_REST
-    [Template]  Upload Bad Image Via REST And Verify Failure
-
-    # Image File Name
-    bmc_bad_manifest.tar
-
-
-Upload BMC Image With No Image Via REST
-    [Documentation]  Upload a BMC image with no just a MANIFEST file via REST
-    ...              and verify that the BMC does not unpack it.
-    [Tags]  Upload_BMC_Image_With_No_Image_Via_REST
-    [Template]  Upload Bad Image Via REST And Verify Failure
-
-    # Image File Name
-    bmc_no_image.tar
-
-
-Upload Host Image With Bad Manifest Via TFTP
-    [Documentation]  Upload a PNOR image with a bad MANIFEST file via TFTP and
-    ...              verify that the BMC does not unpack it.
-    [Tags]  Upload_Host_Image_With_Bad_Manifest_Via_TFTP
-    [Template]  Upload Bad Image Via TFTP And Verify Failure
-
-    # Image File Name
-    pnor_bad_manifest.tar
-
-
-Upload Host Image With No Squashfs Via TFTP
-    [Documentation]  Upload a PNOR image with just a MANIFEST file via TFTP and
-    ...              verify that the BMC does not unpack it.
-    [Tags]  Upload_Host_Image_With_No_Squashfs_Via_TFTP
-    [Template]  Upload Bad Image Via TFTP And Verify Failure
-
-    # Image File Name
-    pnor_no_image.tar
-
-
-Upload BMC Image With Bad Manifest Via TFTP
-    [Documentation]  Upload a BMC image with a bad MANIFEST file via TFTP and
-    ...              verify that the BMC does not unpack it.
-    [Tags]  Upload_BMC_Image_With_Bad_Manifest_Via_TFTP
-    [Template]  Upload Bad Image Via TFTP And Verify Failure
-
-    # Image File Name
-    bmc_bad_manifest.tar
-
-
-Upload BMC Image With No Image Via TFTP
-    [Documentation]  Upload a BMC image with just a MANIFEST file via TFTP and
-    ...              verify that the BMC does not unpack it.
-    [Tags]  Upload_BMC_Image_With_No_Image_Via_TFTP
-    [Template]  Upload Bad Image Via TFTP And Verify Failure
-
-    # Image File Name
-    bmc_no_image.tar
-
-
-*** Keywords ***
-
-Upload Image Teardown
-    [Documentation]  Log FFDC if test fails for debugging purposes.
-
-    Close All Connections
-    FFDC On Test Case Fail
-
-
-Upload Post Request
-    [Documentation]  Make POST request.
-    [Arguments]  ${uri}  ${timeout}=10  ${quiet}=${QUIET}  &{kwargs}
-
-    # Description of argument(s):
-    # uri             URI for uploading image via REST.
-    # timeout         Time allocated for the REST command to return status.
-    # quiet           If enabled turns off logging to console.
-    # kwargs          A dictionary that maps each keyword to a value.
-
-    Initialize OpenBMC  ${timeout}  quiet=${quiet}
-    ${base_uri}=  Catenate  SEPARATOR=  ${DBUS_PREFIX}  ${uri}
-    ${headers}=  Create Dictionary  Content-Type=application/octet-stream
-    ...   X-Auth-Token=${XAUTH_TOKEN}  Accept=application/octet-stream
-    Set To Dictionary  ${kwargs}  headers  ${headers}
-    Run Keyword If  '${quiet}' == '${0}'  Log Request  method=Post
-    ...  base_uri=${base_uri}  args=&{kwargs}
-    ${ret}=  Post Request  openbmc  ${base_uri}  &{kwargs}  timeout=${timeout}
-    Run Keyword If  '${quiet}' == '${0}'  Log Response  ${ret}
-    Should Be Equal As Strings  ${ret.status_code}  ${HTTP_OK}
-
-Get Image Version From TFTP Server
-    [Documentation]  Get the version dfound in the MANIFEST file of
-    ...              an image on the given TFTP server.
-    [Arguments]  ${tftp_image_file_path}
-
-    # Description of argument(s):
-    # tftp_image_file_path  The path to the image on the TFTP server.
-
-    ${stripped_file_path}=  Strip String  ${tftp_image_file_path}  characters=/
-    ${rc}=  OperatingSystem.Run And Return RC
-    ...  curl -s tftp://${TFTP_SERVER}/${stripped_file_path} > tftp_image.tar
-    Should Be Equal As Integers  0  ${rc}
-    ...  msg=Could not download image to check version.
-    ${version}=  Get Version Tar  tftp_image.tar
-    OperatingSystem.Remove File  tftp_image.tar
-    [Return]  ${version}
-
-Upload Image Via REST And Verify Success
-    [Documentation]  Upload an image to the BMC and check that it is unpacked.
-
-    # Upload the given good image to the BMC via REST, and check that the
-    # BMC has unpacked the image and created a valid D-Bus entry for it.
-
-    [Arguments]  ${image_file_path}
-
-    # Description of argument(s):
-    # image_file_path  The path to the image file to upload.
-
-    OperatingSystem.File Should Exist  ${image_file_path}
-    ${image_version}=  Get Version Tar  ${image_file_path}
-    ${image_data}=  OperatingSystem.Get Binary File  ${image_file_path}
-    Upload Image To BMC  /upload/image  data=${image_data}
-    ${ret}  ${version_id}=  Verify Image Upload  ${image_version}
-    Should Be True  ${ret}
-
-Upload Image Via TFTP And Verify Success
-    [Documentation]  Upload an image to the BMC and check that it was unpacked.
-
-    # Upload the given good image to the BMC via TFTP, and check that the
-    # BMC has unpacked the image and created a valid D-Bus entry for it.
-
-    [Arguments]  ${image_file_name}
-
-    # Description of argument(s):
-    # image_file_name  The name of the image file on the TFTP server.
-
-    @{image}=  Create List  ${image_file_name}  ${TFTP_SERVER}
-    ${data}=  Create Dictionary  data=@{image}
-    ${resp}=  OpenBMC Post Request
-    ...  ${SOFTWARE_VERSION_URI}action/DownloadViaTFTP  data=${data}
-    Should Be Equal As Strings  ${resp.status_code}  ${HTTP_OK}
-    Sleep  1 minute
-    ${image_version}=  Get Image Version From TFTP Server  ${image_file_name}
-    ${ret}  ${version_id}=  Verify Image Upload  ${image_version}
-    Should Be True  ${ret}
-
-Upload Bad Image Via REST And Verify Failure
-    [Documentation]  Upload the given bad image to the BMC via REST and check
-    ...              that the BMC did not unpack the invalid image.
-    [Arguments]  ${bad_image_file_name}
-
-    # Description of argument(s):
-    # image_file_name  The name of the bad image to upload via REST.
-
-    ${bad_image_file_path}=  OperatingSystem.Join Path  ${BAD_IMAGES_DIR_PATH}
-    ...  ${bad_image_file_name}
-    OperatingSystem.File Should Exist  ${bad_image_file_path}
-    ...  msg=Bad image file ${bad_image_file_name} not found.
-    ${bad_image_version}=  Get Version Tar  ${bad_image_file_path}
-    ${bad_image_data}=  OperatingSystem.Get Binary File  ${bad_image_file_path}
-    Upload Post Request  /upload/image  data=${bad_image_data}
-    Verify Image Not In BMC Uploads Dir  ${bad_image_version}
-
-Upload Bad Image Via TFTP And Verify Failure
-    [Documentation]  Upload the given bad image to the BMC via TFTP and check
-    ...              that the BMC did not unpack the invalid image.
-    [Arguments]  ${bad_image_file_name}
-
-    # Description of argument(s):
-    # image_file_name  The name of the bad image to upload via TFTP.
-
-    @{image}=  Create List  ${bad_image_file_name}  ${TFTP_SERVER}
-    ${data}=  Create Dictionary  data=@{image}
-    ${resp}=  OpenBMC Post Request
-    ...  ${SOFTWARE_VERSION_URI}action/DownloadViaTFTP  data=${data}
-    Should Be Equal As Strings  ${resp.status_code}  ${HTTP_OK}
-    ${bad_image_version}=  Get Image Version From TFTP Server
-    ...  ${bad_image_file_name}
-    Verify Image Not In BMC Uploads Dir  ${bad_image_version}
diff --git a/extended/code_update/test_software_manager.robot b/extended/code_update/test_software_manager.robot
deleted file mode 100755
index 5925616..0000000
--- a/extended/code_update/test_software_manager.robot
+++ /dev/null
@@ -1,294 +0,0 @@
-*** Settings ***
-Documentation       This suite is for Verifying BMC & BIOS version exposed part
-...                 of system inventory
-
-Resource            ../../lib/rest_client.robot
-Resource            ../../lib/openbmc_ffdc.robot
-Resource            ../../lib/connection_client.robot
-Resource            ../../lib/code_update_utils.robot
-
-Test Teardown       FFDC On Test Case Fail
-
-*** Variables ***
-
-${BMC_SW_PATH}   ${HOST_INVENTORY_URI}system/chassis/motherboard/boxelder/bmc
-${HOST_SW_PATH}  ${HOST_INVENTORY_URI}system/chassis
-
-*** Test Cases ***
-
-Verify Software Purposes
-    [Documentation]  Verify that all software objects have a valid 'Purpose'
-    ...              field.
-    [Tags]  Verify_Software_Purposes
-
-    ${object_uris}=  Read Properties  ${SOFTWARE_VERSION_URI}list
-
-    FOR  ${uri}  IN  @{object_uris}
-      ${object}=  Read Properties  ${uri}
-      Continue For Loop If  not 'Purpose' in ${object}
-      Should Contain Any  ${object}[Purpose]  ${VERSION_PURPOSE_HOST}  ${VERSION_PURPOSE_BMC}
-    END
-
-
-BMC Software Hex ID
-    [Documentation]  Verify BMC images have valid 8-digit hex IDs.
-    [Tags]  BMC_Software_Hex_ID
-    [Template]  Verify Software Hex IDs
-
-    # Software Purpose
-    ${VERSION_PURPOSE_BMC}
-
-
-BMC Software Version
-    [Documentation]  Verify BMC version and activation status.
-    [Tags]  BMC_Software_Version
-    [Template]  Verify Software Version
-
-    # Software Purpose
-    ${VERSION_PURPOSE_BMC}
-
-
-BMC Software Path
-    [Documentation]  Verify BMC images have valid 'Path' properties.
-    [Tags]  BMC_Software_Path
-    [Template]  Verify Software Path
-
-    # Software Version
-    ${VERSION_PURPOSE_BMC}
-
-
-BMC Software RequestedActivation
-    [Documentation]  Veriify BMC images have valid 'RequestedActivation'
-    ...  properties.
-    [Tags]  BMC_Software_RequestedActivation
-    [Template]  Verify Software RequestedActivation
-
-    # Software Purpose
-    ${VERSION_PURPOSE_BMC}
-
-
-BMC Software Activation Association
-    [Documentation]  Verify BMC association.
-    [Tags]  BMC_Software_Activation_Association
-    [Template]  Verify Software Activation Association
-
-    # Software Purpose           Association path
-    ${VERSION_PURPOSE_BMC}       ${BMC_SW_PATH}
-
-
-Host Software Hex ID
-    [Documentation]  Verify host images have valid 8-digit hex IDs.
-    [Tags]  Host_Software_Hex_ID
-    [Template]  Verify Software Hex IDs
-
-    # Software Purpose
-    ${VERSION_PURPOSE_HOST}
-
-
-Host Software Version
-    [Documentation]  Verify host version and activation status.
-    [Tags]  Host_Software_Version
-    [Template]  Verify Software Version
-
-    # Software Purpose
-    ${VERSION_PURPOSE_HOST}
-
-
-Host Software Path
-    [Documentation]  Verify host images have valid 'Path' properties.
-    [Tags]  Host_Software_Path
-    [Template]  Verify Software Path
-
-    # Software Version
-    ${VERSION_PURPOSE_HOST}
-
-
-Host Software RequestedActivation
-    [Documentation]  Veriify host images have valid 'RequestedActivation'
-    ...  properties.
-    [Tags]  Host_Software_RequestedActivation
-    [Template]  Verify Software RequestedActivation
-
-    # Software Purpose
-    ${VERSION_PURPOSE_HOST}
-
-
-Host Software Activation Association
-    [Documentation]  Verify Host association.
-    [Tags]  Host_Software_Activation_Association
-    [Template]  Verify Software Activation Association
-
-    # Software Purpose           Association path
-    ${VERSION_PURPOSE_HOST}      ${HOST_SW_PATH}
-
-
-*** Keywords ***
-
-Verify Software Hex IDs
-    [Documentation]  Verify software has valid hex IDs.
-    [Arguments]  ${software_purpose}
-
-    ${software_ids}=  Get Software Objects Id  ${software_purpose}
-
-    FOR  ${id}  IN  @{software_ids}
-      Length Should Be  ${id}  ${8}
-      Should Match Regexp  ${id}  [0-9a-f]*
-    END
-
-
-Verify Software Path
-    [Documentation]  Verify software has valid 'Path' properties.
-    [Arguments]  ${software_purpose}
-
-    ${software_uris}=  Get Software Objects  ${software_purpose}
-
-    FOR  ${uri}  IN  @{software_uris}
-      ${software_object}=  Get Host Software Property  ${uri}
-      Return From Keyword If  len('${software_object}[Path]') == ${0}
-      BMC Execute Command  [ -d "${path}" ]
-    END
-
-
-Verify Software RequestedActivation
-    [Documentation]  Verify that software has valid 'Purpose' properties.
-    [Arguments]  ${software_purpose}
-
-    ${software_uris}=  Get Software Objects  ${software_purpose}
-
-    FOR  ${uri}  IN  @{software_uris}
-      ${software_object}=  Get Host Software Property  ${uri}
-      Should Contain Any  ${software_object}[RequestedActivation]  ${REQUESTED_ACTIVE}  ${REQUESTED_NONE}
-    END
-
-
-Verify Software Activation Association
-    [Documentation]  Verify software activation association.
-    [Arguments]  ${software_purpose}  ${assoiation_path}
-
-    # Description of argument(s):
-    # software_purpose    BMC or host software purpose.
-    # assoiation_path     BMC or host inventory path.
-
-    # Example:
-    # "/xyz/openbmc_project/software/a0d9ba0d": {
-    #     "Activation": "xyz.openbmc_project.Software.Activation.Activations.Active",
-    #     "Path": "",
-    #     "Priority": 0,
-    #     "Purpose": "xyz.openbmc_project.Software.Version.VersionPurpose.BMC",
-    #     "RequestedActivation": "xyz.openbmc_project.Software.Activation.RequestedActivations.None",
-    #     "Version": "v1.99.9-143-g69cab69",
-    #     "associations": [
-    #        [
-    #            "inventory",
-    #            "activation",
-    #            "/xyz/openbmc_project/inventory/system/chassis/motherboard/boxelder/bmc"
-    #        ]
-    #    ]
-    # },
-    # "/xyz/openbmc_project/software/a0d9ba0d/inventory": {
-    #    "endpoints": [
-    #        "/xyz/openbmc_project/inventory/system/chassis/motherboard/boxelder/bmc"
-    #    ]
-    # },
-
-    ${obj_path_list}=  Get Software Objects  ${software_purpose}
-
-    FOR  ${index}  IN  @{obj_path_list}
-      Verify Inventory Association  ${index}  ${assoiation_path}
-    END
-
-
-Verify Inventory Association
-    [Documentation]  Verify software inventory association.
-    [Arguments]  ${software_path}  ${assoiation_path}
-
-    # Description of argument(s):
-    # software_path       BMC or host software id.
-    # assoiation_path     BMC or host inventory path.
-
-    # Example:
-    #    "/xyz/openbmc_project/inventory/system/chassis/motherboard/boxelder/bmc/activation": {
-    #    "endpoints": [
-    #        "/xyz/openbmc_project/software/e42627b5",
-    #        "/xyz/openbmc_project/software/a0d9ba0d"
-    #    ]
-    # },
-
-    ${sw_attr_data}=  Read Attribute  ${software_path}  Associations
-    List Should Contain Value  @{sw_attr_data}  ${assoiation_path}
-
-    # Verify the inventory path in software manager entry.
-    ${sw_endpoint_data}=  Read Attribute
-    ...  ${software_path}${/}inventory  endpoints
-    List Should Contain Value  ${sw_endpoint_data}  ${assoiation_path}
-
-    # Verify the inventory path.
-    ${inv_endpoint_data}=  Read Attribute
-    ...  ${assoiation_path}${/}activation  endpoints
-    List Should Contain Value  ${inv_endpoint_data}  ${software_path}
-
-
-Verify Software Version
-    [Documentation]  Verify version and activation status.
-    [Arguments]  ${software_purpose}
-
-    # Description of argument(s):
-    # software_purpose    BMC or host software purpose.
-
-    # Example:
-    # /xyz/openbmc_project/software/list
-    # [
-    #   "/xyz/openbmc_project/software/2f974579",
-    #   "/xyz/openbmc_project/software/136cf504"
-    # ]
-
-    ${obj_list}=  Get Software Objects  ${software_purpose}
-
-    FOR  ${index}  IN  @{obj_list}
-      ${resp}=  Get Host Software Property  ${index}
-      Verify Software Properties  ${resp}  ${software_purpose}
-      Run Keyword If  '${software_purpose}' == '${VERSION_PURPOSE_BMC}'
-      ...  Check BMC Version  ${index}  ${resp["Version"]}
-    END
-
-
-Verify Software Properties
-    [Documentation]  Verify the software object properties.
-    [Arguments]  ${software_property}  ${software_purpose}
-
-    # Description of argument(s):
-    # software_property   JSON response data.
-    # software_purpose    BMC or host software purpose
-    #        (e.g. "xyz.openbmc_project.Software.Version.VersionPurpose.BMC"
-    #              "xyz.openbmc_project.Software.Version.VersionPurpose.Host").
-
-    Check Activation Status  ${software_property["Activation"]}
-
-
-Check BMC Version
-    [Documentation]  Get BMC version from /etc/os-release and compare.
-    [Arguments]  ${software_object}  ${version}
-
-    # Description of argument(s):
-    # software_object   Software object path.
-    # version           Software version (e.g. "2.9.0-dev-257-gc97c74782")
-
-    ${min_value}=  Get Least Value Priority Image  ${VERSION_PURPOSE_BMC}
-    ${priority_value}=  Read Software Attribute  ${software_object}  Priority
-
-    Return From Keyword If  ${priority_value} != ${min_value}
-
-    Open Connection And Log In
-    ${cmd}=  Set Variable  grep ^VERSION_ID= /etc/os-release | cut -f 2 -d '='
-    ${output}  ${stderr}  ${rc}=  BMC Execute Command  ${cmd}
-    Should Be Equal As Strings  ${version}  ${output}
-
-
-Check Activation Status
-    [Documentation]  Check if software state is "Active".
-    [Arguments]  ${status}
-
-    # Description of argument(s):
-    # status  Activation status
-    # (e.g. "xyz.openbmc_project.Software.Activation.Activations.Active")
-    Should Be Equal As Strings  ${ACTIVE}  ${status}
diff --git a/extended/code_update/update_bmc.robot b/extended/code_update/update_bmc.robot
deleted file mode 100644
index ec9c81a..0000000
--- a/extended/code_update/update_bmc.robot
+++ /dev/null
@@ -1,99 +0,0 @@
-*** Settings ***
-Documentation     Trigger code update to a target BMC.
-...               Execution Method :
-...               python -m robot -v OPENBMC_HOST:<hostname>
-...               -v FILE_PATH:<path/*all.tar>  update_bmc.robot
-...
-...               Code update method BMC using REST
-...               Update work flow sequence:
-...                 - User input BMC File existence check
-...                 - Ping Test and REST authentication
-...                 - Set Host Power host setting Policy to ALWAYS_POWER_OFF
-...                   On reboot this policy would ensure the BMC comes
-...                   online and stays at HOST_POWERED_OFF state.
-...                 - Issue poweroff
-...                 - Prune archived journal logs
-...                 - Prepare for Update
-...                 - Wait for BMC to come online clean
-...                 - Wait for BMC_READY state
-...                 - Apply preserve BMC Network setting
-...                 - SCP image to BMC
-...                 - Activate the flash image
-...                 - Warm Reset BMC to activate code
-...                 - Wait for BMC to come online time out 30 minutes
-...                 - Version check post update
-...                 - Identify REST url post update
-
-Library                 ../../lib/gen_robot_keyword.py
-Library                 String
-
-Resource                code_update_utils.robot
-Resource                ../../lib/state_manager.robot
-Resource                ../../lib/utils.robot
-Resource                ../../lib/list_utils.robot
-Resource                ../../lib/openbmc_ffdc.robot
-Resource                ../../extended/obmc_boot_test_resource.robot
-
-Test Teardown           Run Key  FFDC On Test Case Fail
-
-*** Variables ***
-
-${QUIET}                ${1}
-# Boot failures are not acceptable so we set the threshold to 0.
-${boot_fail_threshold}  ${0}
-
-${FILE_PATH}            ${EMPTY}
-${FORCE_UPDATE}         ${0}
-${REST_URL_FILE_PATH}   ${EMPTY}
-
-# There are two reboots issued by code update.
-${MAX_BOOT_COUNT}       ${2}
-
-*** Test Cases ***
-
-Initiate Code Update BMC
-    [Documentation]  Initiate a code update on the BMC.
-    [Tags]  Initiate_Code_Update_BMC
-
-    ${status}=  Run Keyword If  '${LAST_KNOWN_GOOD_VERSION}' != '${EMPTY}'
-    ...  Run Keyword And Return Status
-    ...  Validate BMC Version  ${LAST_KNOWN_GOOD_VERSION}
-
-    Run Keyword if  '${status}' == '${True}'
-    ...  Pass Execution  The BMC already has the requested build loaded so no further action will be taken.
-
-    # Enable user to bypass prerequisite operations.
-    # Use cases for if BMC is not in working state.
-    Run Keyword If  ${FORCE_UPDATE} == ${0}
-    ...  Prepare BMC For Update
-
-    Run Key U  Preserve BMC Network Setting
-    Run Key  SCP Tar Image File To BMC \ ${FILE_PATH}
-    Run Key  Activate BMC Flash Image
-    Run Key U  OBMC Boot Test \ OBMC Reboot (off)
-    Run Key U  Check Boot Count And Time
-    Run Keyword If  ${BOOT_COUNT} == ${1}
-    ...  Log  Boot time not updated by kernel.  level=WARN
-
-*** Keywords ***
-
-Prepare BMC For Update
-    [Documentation]  Prerequisite operation before code update.
-    Check Boot Count And Time
-    Prune Journal Log
-    Power Off Request
-    Set BMC Power Policy  ALWAYS_POWER_OFF
-
-    Prepare For Update
-    Check If BMC is Up  20 min  10 sec
-    Check Boot Count And Time
-
-    Wait For BMC Ready
-
-Check Boot Count And Time
-    [Documentation]  Check for unexpected reboots.
-    Set BMC Reset Reference Time
-    Log To Console  \n Boot Count: ${BOOT_COUNT}
-    Log To Console  \n Boot Time: ${BOOT_TIME}
-    Run Keyword If  ${BOOT_COUNT} > ${MAX_BOOT_COUNT}
-    ...  Log  Phantom Reboot!!! Unexpected reboot detected  level=WARN
diff --git a/extended/test_slp.robot b/security/test_slp.robot
similarity index 100%
rename from extended/test_slp.robot
rename to security/test_slp.robot