Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for legacy network adapters to Hyper-V builder #7114

Closed
ladar opened this issue Dec 14, 2018 · 3 comments · Fixed by #7128
Closed

Add support for legacy network adapters to Hyper-V builder #7114

ladar opened this issue Dec 14, 2018 · 3 comments · Fixed by #7128

Comments

@ladar
Copy link
Contributor

ladar commented Dec 14, 2018

I'd like request adding a config option to the hyperv-iso builder which allows the creation of VMs preconfigured with legacy network adapters. I have not been able to find a way to automate this, as there is nothing like the vmx_data or qemuargs option for the Hyper-V builders.

I need this option, because without it, I cannot automate the creation of Hyper-V images for operating systems like NetBSD, Minix and other similarly exotic/esoteric operating systems.

Virtual machines with these operating systems are incapable of providing network access on Hyper-V/Azure, unless they are configured with a legacy network adapter. This makes the retrieval of auto-install configs impossible. And if someone does manage to get the operating system installed, using a complex boot command sequence, the resulting virtual machine will lack network access, thus making it impossible to provision.

Note, this feature request would address various open and closed issues, such as #5605.

On the bright side, I believe this feature has already been implemented, by pull request #4656. It became part of the an effort to improve IP discovery, and was closed, without merging, when the IP discovery effort in #5993 was abandoned.

@mwhooker claimed, once upon a time, that this feature could be merged, if requested. So I'm requesting it.

And @SwampDragons said a new issue should be opened, if anybody wanted to revive this effort.

From what I read, all #4656 needs is additional testing, to ensure it still works. What else is required for a merge?

@SwampDragons
Copy link
Contributor

My understanding was that #4656 didn't work; we left it open for a long time in case someone had a use case it did work for, and when no one spoke up, we closed it. Have you tried it out? Can you share the config that it's working for?

@ladar
Copy link
Contributor Author

ladar commented Dec 18, 2018

@SwampDragons see PR #7128. It's been tested, and does indeed work. The following screenshots show that the NetBSD image gets provisioned with a legacy adapter, as desired, and that the resulting machine has network access.

screenshot from 2018-12-18 04-48-29

screenshot from 2018-12-18 05-03-24

You should be able to test using:

git clone https://github.com/lavabit/robox/
cd robox
bash -c './robox.sh box generic-netbsd8-hyperv'

Which, as of now, doesn't include the new legacy adapater boolean. Add the boolean, and you'll see the machine does recognize the adapter.

Note, the boot command is rather slow/long by default. You might want to click through manually for faster testing results.

@ghost
Copy link

ghost commented Mar 30, 2020

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.

If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@ghost ghost locked and limited conversation to collaborators Mar 30, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants