Description of problem: Using ‘VM and Instance.vLANs.name' or ‘VM and Instance.vLANs.uid_ems' do not work, they always evaluate to 'false' regardless of the criteria. Below is an example Version-Release number of selected component (if applicable): CF 4.2 How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info: Example condition: ============== ( VM and Instance : Name = "gk-cfci-03" AND VM and Instance.vLANs : Uid Ems CONTAINS "dvportgroup-36" AND VM and Instance.vLANs : Name CONTAINS "602-vd-OOB_MGMT" ) Policy simulation result for VM named 'gk-cfci-03': ================================= - VM and Instance: Name = 'go-cfci-03' returns 'true' - VM and Instance.vLANs : Uid Ems CONTAINS "dvportgroup-36" returns 'false' - VM and Instance.vLANs : Name CONTAINS "602-vd-OOB_MGMT" returns 'false' Rails Console listing of 'gk-cfci-03's LANs: ========================== irb(main):012:0> Vm.find_by(name: 'gk-cfci-03', active: true).lans.each{|lan| pp lan};0 #<Lan:0x0000000a204388 id: 10000000000645, switch_id: 10000000000003, name: "602-vd-OOB_MGMT", tag: "", created_on: Tue, 28 Feb 2017 17:59:44 UTC +00:00, updated_on: Tue, 28 Feb 2017 17:59:44 UTC +00:00, uid_ems: "dvportgroup-36", allow_promiscuous: false, forged_transmits: false, mac_changes: false, computed_allow_promiscuous: nil, computed_forged_transmits: nil, computed_mac_changes: nil> #<Lan:0x0000000a20fa08 id: 10000000000645, switch_id: 10000000000003, name: "602-vd-OOB_MGMT", tag: "", created_on: Tue, 28 Feb 2017 17:59:44 UTC +00:00, updated_on: Tue, 28 Feb 2017 17:59:44 UTC +00:00, uid_ems: "dvportgroup-36", allow_promiscuous: false, forged_transmits: false, mac_changes: false, computed_allow_promiscuous: nil, computed_forged_transmits: nil, computed_mac_changes: nil> => 0
https://github.com/ManageIQ/manageiq/pull/14477
New commit detected on ManageIQ/manageiq/master: https://github.com/ManageIQ/manageiq/commit/b3c3ea9451d0543ca02a3c322a6cc90005a5710e commit b3c3ea9451d0543ca02a3c322a6cc90005a5710e Author: Lucy Fu <lufu> AuthorDate: Thu Mar 23 15:16:51 2017 -0400 Commit: Lucy Fu <lufu> CommitDate: Tue Mar 28 09:31:45 2017 -0400 Fix an issue in Condition where fields of virtual associations can't be evaluated. Virtual associations are not checked when navigating down the relationships. https://bugzilla.redhat.com/show_bug.cgi?id=1434553 lib/extensions/ar_taggable.rb | 2 +- spec/lib/extensions/ar_taggable_spec.rb | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-)
Verified in 5.8.0.9-alpha2.20170404195944_1d7ece4. "VM and Instance.vLANs.name" and "VM and Instance.vLANs.uid_ems" criterias work as expected.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2017:1367