Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1671397

Summary: [RFE] Add mousovers and brief help instructions to OVA import dialog
Product: [oVirt] ovirt-engine Reporter: Sandro Bonazzola <sbonazzo>
Component: Frontend.WebAdminAssignee: Lucia Jelinkova <ljelinko>
Status: CLOSED CURRENTRELEASE QA Contact: meital avital <mavital>
Severity: medium Docs Contact:
Priority: medium    
Version: 4.3.0CC: bugs, gshereme, ljelinko, michal.skrivanek, rbarry
Target Milestone: ovirt-4.4.0Keywords: FutureFeature, Regression
Target Release: ---Flags: rbarry: ovirt-4.4?
rule-engine: blocker?
rule-engine: planning_ack?
pm-rhel: devel_ack+
pm-rhel: testing_ack+
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ovirt-engine-4.4.0 gitb5b5c99ca2f Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-05-20 20:03:47 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Virt RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1623779    
Bug Blocks:    
Attachments:
Description Flags
hit_import.png
none
import_ova.png
none
upload fails none

Description Sandro Bonazzola 2019-01-31 14:18:38 UTC
Created attachment 1525375 [details]
hit_import.png

With bug #1381223 we dropped ovirt-image-uploader for uploading an OVA to an export domain.

Bug #1049604 says OVA can now be imported.

Going to Compute -> Virtual Machines , selecting import (see hit_import.png)

Select Virtual Appliance (OVA) and set the path (see import_ova.png) hit button Load

Upload fails with "Failed to load VM configuration from OVA file: " (see upload_fails.png )

Here a file picker should have been used to set the path and there's no hint on why the upload failed.
Looking at logs:

2019-01-31 15:13:28,136+01 INFO  [org.ovirt.engine.core.common.utils.ansible.AnsibleExecutor] (default task-8) [ee49e909-68ba-4550-a297-039c4f5da055] Executing Ansible command: ANSIBLE_STDOUT_CALLBACK=ovaqueryplugin [/usr/bin/ansible-playbook, --ssh-common-args=-F /var/lib/ovirt-engine/.ssh/config, --private-key=/etc/pki/ovirt-engine/keys/engine_id_rsa, --inventory=/tmp/ansible-inventory3614475345606149410, --extra-vars=ovirt_query_ova_path=/home/sbonazzo/NotBackedUp/OS-iso/manageiq-ovirt-hammer-1.ova, --extra-vars=list_directory=True, --extra-vars=entity_type=vm, /usr/share/ovirt-engine/playbooks/ovirt-ova-query.yml] [Logfile: /var/log/ovirt-engine/ova/ovirt-query-ova-ansible-20190131151328-mididell.home.log]

log says:

2019-01-31 15:13:29,513 p=23624 u=ovirt |  Traceback (most recent call last):
  File "/root/.ansible/tmp/ansible-tmp-1548944008.79-142889167569025/query_ova.py", line 76, in <module>
    ovf = get_ovf_from_dir(ova_path, sys.argv[3], templates)
  File "/root/.ansible/tmp/ansible-tmp-1548944008.79-142889167569025/query_ova.py", line 42, in get_ovf_from_dir
    files = os.listdir(ova_path)
OSError: [Errno 2] No such file or directory: '/home/sbonazzo/NotBackedUp/OS-iso/manageiq-ovirt-hammer-1.ova'

but:

$ ls -l /home/sbonazzo/NotBackedUp/OS-iso/manageiq-ovirt-hammer-1.ova
-rw-rw-r--. 1 sbonazzo sbonazzo 1944170047 11 gen 09.09 /home/sbonazzo/NotBackedUp/OS-iso/manageiq-ovirt-hammer-1.ova

Comment 1 Sandro Bonazzola 2019-01-31 14:19:19 UTC
Created attachment 1525376 [details]
import_ova.png

Comment 2 Sandro Bonazzola 2019-01-31 14:20:02 UTC
Created attachment 1525377 [details]
upload fails

Comment 3 Michal Skrivanek 2019-01-31 15:05:45 UTC
the path is from the host, not your client machine. It also only supports oVirt's OVA, not any other random OVA

Comment 4 Sandro Bonazzola 2019-01-31 15:15:48 UTC
Tried also on host with official release of ManageIQ hammer1 OVA for oVirt, not exactly a random OVA.
Didn't work for me as well. I would expect OVA to be uploaded through Web UI as we do for disks and isos.

Comment 5 Sandro Bonazzola 2019-01-31 15:16:20 UTC
Or at least some text in the dialog to guide me doing the right thing there.

Comment 6 Sandro Bonazzola 2019-01-31 15:23:32 UTC
About the import from host, I think issue is https://github.com/ManageIQ/manageiq/issues/18197 .

Comment 7 Greg Sheremeta 2019-01-31 17:14:17 UTC
> Here a file picker should have been used to set the path

I agree, this is a usability issue. We upload ISOs in the UI with a file chooser, but we ask users to this dance on the filesystem (36:36 etc) for OVAs [1].

Let us know if you need design assistance.

[1] https://ovirt.org/documentation/vmm-guide/chap-Administrative_Tasks.html#importing-a-virtual-machine-from-a-host

Comment 8 Michal Skrivanek 2019-01-31 18:49:31 UTC
(In reply to Sandro Bonazzola from comment #4)
> Tried also on host with official release of ManageIQ hammer1 OVA for oVirt,
> not exactly a random OVA.
> Didn't work for me as well. I would expect OVA to be uploaded through Web UI
> as we do for disks and isos.

Unfortunately it is. MIQ never followed the same format, but it got worse recently where we changed things in oVirt OVA format in 4.2.
Again, the ONLY thing we support is oVirt's own OVA, nothing else. If anyone wants to create OVA for oVirt consumption it needs to follow oVirt's export/import code.

Comment 9 Michal Skrivanek 2019-01-31 18:52:41 UTC
(In reply to Greg Sheremeta from comment #7)
> > Here a file picker should have been used to set the path
> 
> I agree, this is a usability issue. We upload ISOs in the UI with a file
> chooser, but we ask users to this dance on the filesystem (36:36 etc) for
> OVAs 

yeah, but that use case was de-scoped early in the OVA planning. 
The use case is for export/import for backup purposes, sharing (same as with export domain), NOT for upload/download to user's machine

It's not about improving experience, the documentation is clear (I think), it's a request to implement a different use case.
Unlikely to happen, but patches are welcomed of course.

Comment 10 Ryan Barry 2019-02-06 13:01:37 UTC
So, we can get a couple of indications for the following caveats:

* The to be referenced should be on a hypervisor host, not the engine
* Given the above, a file picker cannot be used
* Per Nisim, if a folder named "OVF" is part of the path, only one OVA at a time can be imported
* Possibly add a default value to the path to make the above more obvious

Comment 11 Greg Sheremeta 2019-02-06 21:10:03 UTC
You can use a gray Alert to add a little help:
https://www.patternfly.org/pattern-library/widgets/#alerts

Comment 12 Red Hat Bugzilla Rules Engine 2019-02-11 23:51:57 UTC
This bug report has Keywords: Regression or TestBlocker.
Since no regressions or test blockers are allowed between releases, it is also being identified as a blocker for this release. Please resolve ASAP.

Comment 13 Michal Skrivanek 2020-03-18 13:47:13 UTC
done?

Comment 14 Lucia Jelinkova 2020-03-19 11:44:52 UTC
Yes.

Comment 15 meital avital 2020-04-16 12:44:47 UTC
Verified on version: ovirt-engine-4.4.0-0.29.master.el8ev.noarch

Mouseover/help instructions message added:
" 
Path on the host to the oVirt OVA file or to the directory containing oVirt OVA files (other OVA formats are not supported).
"

Comment 16 Sandro Bonazzola 2020-05-20 20:03:47 UTC
This bugzilla is included in oVirt 4.4.0 release, published on May 20th 2020.

Since the problem described in this bug report should be
resolved in oVirt 4.4.0 release, it has been closed with a resolution of CURRENT RELEASE.

If the solution does not work for you, please open a new bug report.