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

[4.0] qvm-create --class StandaloneVM throws exception in qubesd #3793

Open
y0naz opened this Issue Apr 6, 2018 · 4 comments

Comments

Projects
None yet
3 participants
@y0naz

y0naz commented Apr 6, 2018

Qubes OS version:

4.0

Affected component(s):

qvm-create
qvm-clone
qubesd


Steps to reproduce the behavior:

$ qvm-create vmname --class StandaloneVM --template fedora-26 --label orange

Expected behavior:

StandaloneVM is created based in TemplateVM fedora-26

Actual behavior:

$ qvm-create vmname --class StandaloneVM --template fedora-26 --label orange
app: Error creating VM: Got empty response from qubesd. See journalctl in dom0 for details.

journalctl output:

Apr 06 00:46:37 dom0 qubesd[13232]: unhandled exception while calling src=b'dom0' meth=b'admin.vm.Create.StandaloneVM' dest=b'dom0' arg=b'fedora-26' len(untrusted_payload)=21
Apr 06 00:46:37 dom0 qubesd[13232]: Traceback (most recent call last):
Apr 06 00:46:37 dom0 qubesd[13232]: File "/usr/lib/python3.5/site-packages/qubes/api/init.py", line 262, in respond
Apr 06 00:46:37 dom0 qubesd[13232]: untrusted_payload=untrusted_payload)
Apr 06 00:46:37 dom0 qubesd[13232]: File "/usr/lib64/python3.5/asyncio/futures.py", line 381, in iter
Apr 06 00:46:37 dom0 qubesd[13232]: yield self # This tells Task to wait for completion.
Apr 06 00:46:37 dom0 qubesd[13232]: File "/usr/lib64/python3.5/asyncio/tasks.py", line 310, in _wakeup
Apr 06 00:46:37 dom0 qubesd[13232]: future.result()
Apr 06 00:46:37 dom0 qubesd[13232]: File "/usr/lib64/python3.5/asyncio/futures.py", line 294, in result
Apr 06 00:46:37 dom0 qubesd[13232]: raise self._exception
Apr 06 00:46:37 dom0 qubesd[13232]: File "/usr/lib64/python3.5/asyncio/tasks.py", line 240, in _step
Apr 06 00:46:37 dom0 qubesd[13232]: result = coro.send(None)
Apr 06 00:46:37 dom0 qubesd[13232]: File "/usr/lib64/python3.5/asyncio/coroutines.py", line 213, in coro
Apr 06 00:46:37 dom0 qubesd[13232]: res = yield from res
Apr 06 00:46:37 dom0 qubesd[13232]: File "/usr/lib/python3.5/site-packages/qubes/api/admin.py", line 960, in _vm_create
Apr 06 00:46:37 dom0 qubesd[13232]: assert not self.arg
Apr 06 00:46:37 dom0 qubesd[13232]: AssertionError

General notes:

If the template-based StandaloneVM is created with the Qube Manager, a templateless, empty StandaloneVM is created.
Creating a StandaloneVM based on debian-9 triggers the same response


Related issues:

qvm-clone on TemplateVMs and previously created template-based StandaloneVMs also results in empty VMs, qvm-clone on Windows-based StandaloneVMs works fine however.
AppVM creation works fine too.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Apr 6, 2018

Member

StandaloneVM have no template, this is why the operation fails. The error message should definitely be improved.

The proper way to create new StandaloneVM and import content of a template into it is to use qvm-clone --class StandaloneVM debian-9 vmname

Member

marmarek commented Apr 6, 2018

StandaloneVM have no template, this is why the operation fails. The error message should definitely be improved.

The proper way to create new StandaloneVM and import content of a template into it is to use qvm-clone --class StandaloneVM debian-9 vmname

@y0naz

This comment has been minimized.

Show comment
Hide comment
@y0naz

y0naz Apr 6, 2018

I just tried that, a StandaloneVM is created but it's empty, no content is imported. The operation succeeds but no applications are installed.

y0naz commented Apr 6, 2018

I just tried that, a StandaloneVM is created but it's empty, no content is imported. The operation succeeds but no applications are installed.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Apr 6, 2018

Member

What do you mean by "it's empty"? Try qvm-run vmname gnome-terminal or such.

Member

marmarek commented Apr 6, 2018

What do you mean by "it's empty"? Try qvm-run vmname gnome-terminal or such.

@y0naz

This comment has been minimized.

Show comment
Hide comment
@y0naz

y0naz Apr 6, 2018

Oh, it does run, the StandaloneVM appears to be now created correctly.

Thanks!

y0naz commented Apr 6, 2018

Oh, it does run, the StandaloneVM appears to be now created correctly.

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment