Skip to content

Commit ac60477

Browse files
pb8ozulinx86
authored andcommitted
test: skip snapshotting old releases in m6a
Firecracker releases up to 1.3.3 do not pass CPU information in a way that can cause a crash in the Ubuntu 22.04 rootfs. This was fixed in 8dab78b, but not released in the 1.2 branch. Skip the test as 1.2 will be out of support soon. Signed-off-by: Pablo Barbáchano <pablob@amazon.com>
1 parent b89b8af commit ac60477

File tree

3 files changed

+19
-2
lines changed

3 files changed

+19
-2
lines changed

tests/integration_tests/functional/test_mmds.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import pytest
1313

1414
import host_tools.logging as log_tools
15+
from framework.properties import global_props
1516
from framework.utils import (
1617
configure_mmds,
1718
generate_mmds_get_request,
@@ -640,6 +641,11 @@ def test_mmds_older_snapshot(
640641
if the FC version does not support this feature.
641642
"""
642643

644+
# due to bug fixed in commit 8dab78b
645+
firecracker_version = firecracker_release.version_tuple
646+
if global_props.instance == "m6a.metal" and firecracker_version < (1, 3, 3):
647+
pytest.skip("incompatible with AMD and Firecracker <1.3.3")
648+
643649
microvm = microvm_factory.build(
644650
guest_kernel,
645651
rootfs,

tests/integration_tests/functional/test_snapshot_advanced.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,10 @@
1010

1111
import host_tools.drive as drive_tools
1212
from framework.microvm import SnapshotType
13+
from framework.properties import global_props
1314

1415
# Define 4 scratch drives.
15-
scratch_drives = ["vdb", "vdc", "vdd", "vde", "vdf"]
16+
scratch_drives = ["vdb", "vdc", "vdd", "vde"]
1617

1718

1819
def test_restore_old_to_current(
@@ -26,6 +27,11 @@ def test_restore_old_to_current(
2627
2. Restore with the current build
2728
"""
2829

30+
# due to bug fixed in commit 8dab78b
31+
firecracker_version = firecracker_release.version_tuple
32+
if global_props.instance == "m6a.metal" and firecracker_version < (1, 3, 3):
33+
pytest.skip("incompatible with AMD and Firecracker <1.3.3")
34+
2935
# Microvm: 2vCPU 256MB RAM, balloon, 4 disks and 4 net devices.
3036
diff_snapshots = True
3137
vm = microvm_factory.build(
@@ -37,7 +43,6 @@ def test_restore_old_to_current(
3743
)
3844
vm.spawn()
3945
vm.basic_config(track_dirty_pages=True)
40-
4146
snapshot = create_snapshot_helper(
4247
vm,
4348
drives=scratch_drives,

tests/integration_tests/performance/test_snapshot_perf.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import pytest
1010

1111
import host_tools.logging as log_tools
12+
from framework.properties import global_props
1213
from framework.stats import consumer, producer, types
1314
from framework.utils import CpuMap
1415

@@ -84,6 +85,11 @@ def test_older_snapshot_resume_latency(
8485
if "4.14" not in guest_kernel.name:
8586
pytest.skip("just test one guest kernel")
8687

88+
# due to bug fixed in commit 8dab78b
89+
firecracker_version = firecracker_release.version_tuple
90+
if global_props.instance == "m6a.metal" and firecracker_version < (1, 3, 3):
91+
pytest.skip("incompatible with AMD and Firecracker <1.3.3")
92+
8793
vcpus, guest_mem_mib = 2, 512
8894
microvm_cfg = f"{vcpus}vcpu_{guest_mem_mib}mb.json"
8995
vm = microvm_factory.build(

0 commit comments

Comments
 (0)