Skip to content

Commit b3ba6de

Browse files
committed
Use MAC as dhcp-identifier for restored VMs
Signed-off-by: Albin Sun <[email protected]>
1 parent ec231f8 commit b3ba6de

File tree

2 files changed

+16
-4
lines changed

2 files changed

+16
-4
lines changed

harvester_e2e_tests/fixtures/images.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ def image_opensuse(request, api_client):
2323
*_, image_name = url.path.rsplit("/", 1)
2424
url = urlparse(urljoin(f"{image_server}/", image_name))
2525

26-
return ImageInfo(url, image_checksum, name="opensuse", ssh_user="opensuse")
26+
return ImageInfo(url, image_checksum, name="opensuse", ssh_user="opensuse", first_nic="eth0")
2727

2828

2929
@pytest.fixture(scope="session")
@@ -38,7 +38,7 @@ def image_ubuntu(request):
3838
*_, image_name = url.path.rsplit("/", 1)
3939
url = urlparse(urljoin(f"{image_server}/", image_name))
4040

41-
return ImageInfo(url, image_checksum, name="ubuntu", ssh_user="ubuntu")
41+
return ImageInfo(url, image_checksum, name="ubuntu", ssh_user="ubuntu", first_nic="enp1s0")
4242

4343

4444
@pytest.fixture(scope="session")
@@ -51,14 +51,15 @@ def image_k3s(request):
5151

5252

5353
class ImageInfo:
54-
def __init__(self, url_result, image_checksum=None, name="", ssh_user=None):
54+
def __init__(self, url_result, image_checksum=None, name="", ssh_user=None, first_nic=None):
5555
self.url_result = url_result
5656
if name:
5757
self.name = name
5858
else:
5959
self.name = self.url.rsplit("/", 1)[-1]
6060
self.ssh_user = ssh_user
6161
self.image_checksum = image_checksum
62+
self.first_nic = first_nic
6263

6364
def __repr__(self):
6465
return f"{__class__.__name__}({self.url_result})"

harvester_e2e_tests/integrations/test_upgrade.py

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -638,13 +638,24 @@ def test_preq_setup_vms(
638638
old_sc, new_sc = config_storageclass
639639
unique_vm_name = f"ug-vm-{unique_name}"
640640

641-
cpu, mem, size = 1, 2, 5
641+
cpu, mem, size = 1, 2, 10
642642
vm_spec = api_client.vms.Spec(cpu, mem, mgmt_network=False)
643643
vm_spec.add_image('disk-0', image['id'], size=size)
644644
vm_spec.add_network('nic-1', f"{vm_network['namespace']}/{vm_network['name']}")
645645
userdata = yaml.safe_load(vm_spec.user_data)
646646
userdata['ssh_authorized_keys'] = [pub_key]
647647
vm_spec.user_data = yaml.dump(userdata)
648+
# Ref. https://docs.harvesterhci.io/v1.7/vm/backup-restore#create-a-vm-backup
649+
vm_spec.network_data = yaml.dump({
650+
"version": 2,
651+
"ethernets": {
652+
image["first_nic"]: {
653+
"dhcp4": True,
654+
"dhcp6": True,
655+
"dhcp-identifier": "mac"
656+
}
657+
}
658+
})
648659

649660
code, data = api_client.vms.create(unique_vm_name, vm_spec)
650661
assert 201 == code, (code, data)

0 commit comments

Comments
 (0)