Merge pull request #1271 from jfckm/startup-scenarios
Tests scenarios for CAS startup incl failover
This commit is contained in:
commit
a32495f0af
@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright(c) 2019-2021 Intel Corporation
|
||||
# Copyright(c) 2019-2022 Intel Corporation
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
#
|
||||
|
||||
@ -151,6 +151,121 @@ def test_cas_init_with_changed_mode(cache_mode_pair):
|
||||
validate_cache(cache_mode_pair[1])
|
||||
|
||||
|
||||
@pytest.mark.skip(reason="not implemented")
|
||||
def test_cas_startup_lazy():
|
||||
"""
|
||||
title: Test successful boot with CAS configuration including lazy_startup
|
||||
description: |
|
||||
Check that DUT boots succesfully with failing lazy-startup marked devices
|
||||
pass_criteria:
|
||||
- DUT boots sucesfully
|
||||
- caches are configured as expected
|
||||
steps:
|
||||
- Prepare one drive for caches and one for cores
|
||||
- Create 2 cache partitions and 4 core partitons
|
||||
- Create opencas.conf config for 2 caches each with 2 core partition as cores
|
||||
- Mark first cache as lazy_startup=True
|
||||
- Mark first core of second cache as lazy_startup=True
|
||||
- Run casctl init
|
||||
- Run casctl stop
|
||||
- Remove first cache partition
|
||||
- Remove first core of second cache partition
|
||||
- Reboot DUT
|
||||
- Verify DUT booted successfully
|
||||
- Verify CAS configured properly
|
||||
"""
|
||||
pass
|
||||
|
||||
|
||||
@pytest.mark.skip(reason="not implemented")
|
||||
def test_cas_startup_negative_missing_core():
|
||||
"""
|
||||
title: Test unsuccessful boot with CAS configuration
|
||||
description: |
|
||||
Check that DUT doesn't boot sucesfully when using invalid CAS configuration
|
||||
pass_criteria:
|
||||
- DUT enters emergency mode
|
||||
steps:
|
||||
- Prepare one drive for caches and one for cores
|
||||
- Create 2 cache partitions and 4 core partitons
|
||||
- Create opencas.conf config for 2 caches each with 2 core partitions as cores
|
||||
- Mark second cache as lazy_startup=True
|
||||
- Run casctl init
|
||||
- Run casctl stop
|
||||
- Remove second cache cores partitions
|
||||
- Reboot DUT
|
||||
- Verify the DUT entered emergency mode
|
||||
"""
|
||||
pass
|
||||
|
||||
|
||||
@pytest.mark.skip(reason="not implemented")
|
||||
def test_cas_startup_negative_missing_cache():
|
||||
"""
|
||||
title: Test unsuccessful boot with CAS configuration
|
||||
description: |
|
||||
Check that DUT doesn't boot sucesfully when using invalid CAS configuration
|
||||
pass_criteria:
|
||||
- DUT enters emergency mode
|
||||
steps:
|
||||
- Prepare one drive for caches and one for cores
|
||||
- Create 2 cache partitions and 4 core partitons
|
||||
- Create opencas.conf config for 2 caches each with 2 core partitions as cores
|
||||
- Mark cores of second cache as lazy_startup=True
|
||||
- Run casctl init
|
||||
- Run casctl stop
|
||||
- Remove second cache partition
|
||||
- Reboot DUT
|
||||
- Verify the DUT entered emergency mode
|
||||
"""
|
||||
pass
|
||||
|
||||
|
||||
@pytest.mark.skip(reason="not implemented")
|
||||
def test_failover_config_startup():
|
||||
"""
|
||||
title: Test successful boot with failover-specific configuration options
|
||||
description: |
|
||||
Check that DUT boots sucesfully and CAS is properly configured when using failover-specific
|
||||
configuration options (target_failover_state)
|
||||
pass_criteria:
|
||||
- DUT boots sucesfully
|
||||
- caches are configured as expected
|
||||
steps:
|
||||
- Prepare two drives for cache and one for core
|
||||
- Create opencas.conf config for two caches: one target_failover_state=active with core
|
||||
and one target_failover_state=standby
|
||||
- Initialize configuration
|
||||
- Reboot DUT
|
||||
- Wait for successful boot
|
||||
- Verify caches state
|
||||
"""
|
||||
pass
|
||||
|
||||
|
||||
@pytest.mark.skip(reason="not implemented")
|
||||
def test_failover_config_startup_negative():
|
||||
"""
|
||||
title: Test unsuccessful boot with failover-specific configuration options
|
||||
description: |
|
||||
Check that DUT doesn't boot successfully with misconfigured cache using failover-specific
|
||||
configuration options (target_failover_state). After boot it should be verified that emergency
|
||||
mode was in fact triggered.
|
||||
pass_criteria:
|
||||
- DUT enters emergency mode
|
||||
steps:
|
||||
- Prepare one drive for cache
|
||||
- Create partition for cache
|
||||
- Create opencas.conf config for single standby cache on created partiton
|
||||
- Run casctl init
|
||||
- Run casctl stop
|
||||
- Remove cache partition
|
||||
- Reboot DUT
|
||||
- Verify the DUT entered emergency mode
|
||||
"""
|
||||
pass
|
||||
|
||||
|
||||
def validate_cache(cache_mode):
|
||||
caches = casadm_parser.get_caches()
|
||||
caches_count = len(caches)
|
||||
|
Loading…
Reference in New Issue
Block a user