def agent_enrolled_unix_system(core_session_global, core_tenant,
                               generic_cagent_enroll_root,
                               agent_enrollment_code):
    ssh_session = generic_cagent_enroll_root
    enroll_code = agent_enrollment_code
    resource_name = 'unix_agent_' + guid()[0:5]
    logger.info("enrolling the cagent")
    command = f"cenroll -f -F all -t {core_tenant['fqdn']} -c {enroll_code}  -N {resource_name}"
    ssh_manager.enroll_agent(ssh_session, command, wait=True)

    server_id = RedrockController.get_server_id_by_name(
        core_session_global, resource_name)
    yield {"ResourceId": server_id, "Session": ssh_session}
def agent_enrolled_windows_system(core_session_global, core_tenant,
                                  generic_cagent_enroll_win_admin,
                                  agent_enrollment_code):
    winrm_session_as_admin = generic_cagent_enroll_win_admin
    enroll_code = agent_enrollment_code
    resource_name = 'win_agent_' + guid()[0:5]

    # start the agent service
    winrm_session_as_admin.send_command("net start cagent")

    command = f"cenroll -f -F all -t {core_tenant['fqdn']} -c {enroll_code}  -N {resource_name}"
    logger.info(f"Enrolling the client: {command}")
    winrm_helper.enroll_agent(winrm_session_as_admin, command, wait=True)

    server_id = RedrockController.get_server_id_by_name(
        core_session_global, resource_name)
    yield {"ResourceId": server_id, "Session": winrm_session_as_admin}