ironic/ironic/tests/drivers
Lucas Alvares Gomes b5a531aa4d Add a mechanism to route vendor methods
Each vendor class had to implement a custom method
to invoke their own vendor functionalities, the commit
e129faef17 added a decorator @passthru()
to decorate those vendor methods and guarantee that the errors and
exceptions are being handled accordingly. This patch is extending that
decorator to add some metadata to each vendor method and from that be
able to generically build a way to invoke those without requiring vendor
drivers to implement a custom method for that.

The vendor_passthru() and driver_vendor_passthru() methods were removed
from the VendorInterface base class. Now vendors that wants to implement
a vendor method should now only care about implementing the method itself
and decorating them with the @passthru() or @driver_passthru decorator.

This patch also adds a backward compatibility layer for existing drivers
out of the tree that may be using the old [driver_]vendor_passthru()
methods. If the vendor class contains those methods we are going to
call them just like before, otherwise we are going to use the new
mechanism. All drivers in tree have been ported to the new mechanism.

Implements: blueprint extended-vendor-passthru
Partial-Bug: #1382457
Change-Id: I7770ccd9668d9c03e02f769aff7c54b33734a770
2014-11-11 11:41:23 +00:00
..
drac Merge "Removed hardcoded IDs from "node" test resources" 2014-10-22 17:11:53 +00:00
ilo Add a mechanism to route vendor methods 2014-11-11 11:41:23 +00:00
__init__.py Mock seamicroclient lib in unit tests if not present 2014-06-09 17:08:23 +00:00
agent_pxe_config.template Pass ipa-driver-name to agent ramdisk 2014-09-23 16:34:47 +05:30
pxe_config.template Add in text for text mode on trusty 2014-08-19 11:35:11 -07:00
test_agent.py Add a mechanism to route vendor methods 2014-11-11 11:41:23 +00:00
test_agent_client.py Enable H307 PEP8 check 2014-10-13 10:09:53 -04:00
test_base.py Add a mechanism to route vendor methods 2014-11-11 11:41:23 +00:00
test_console_utils.py Switch to oslo.concurrency 2014-10-28 11:49:11 +00:00
test_deploy_utils.py Change the force_raw_image config usage 2014-10-28 09:33:46 -07:00
test_fake.py Use DbTestCase as test base when context needed 2014-09-30 18:02:33 +03:00
test_iboot.py Move database fixture to a separate test case 2014-10-08 00:20:50 +03:00
test_image_cache.py Merge "Change the force_raw_image config usage" 2014-10-31 08:01:53 +00:00
test_ipminative.py Removed hardcoded IDs from "port" test resources 2014-10-28 09:03:20 -04:00
test_ipmitool.py Add a mechanism to route vendor methods 2014-11-11 11:41:23 +00:00
test_iscsi_deploy.py Merge "Change the force_raw_image config usage" 2014-10-31 08:01:53 +00:00
test_pxe.py Add a mechanism to route vendor methods 2014-11-11 11:41:23 +00:00
test_seamicro.py Add a mechanism to route vendor methods 2014-11-11 11:41:23 +00:00
test_snmp.py Merge "Add SNMP driver for Aten PDU's" 2014-10-20 15:35:46 +00:00
test_ssh.py Merge "Removed hardcoded IDs from "port" test resources" 2014-10-30 10:30:47 +00:00
test_utils.py Add a mechanism to route vendor methods 2014-11-11 11:41:23 +00:00
third_party_driver_mocks.py Fix markup-related issues in documentation 2014-10-09 15:06:22 +03:00