summaryrefslogtreecommitdiff
path: root/ironic/drivers
Commit message (Collapse)AuthorAgeFilesLines
* Don't reraise Exceptions from agent driverRuby Loo2014-09-241-2/+12
| | | | | | | | | Since we only want drivers to raise IronicExceptions, this raises a VendorPassthruException instead of any non-IronicException in the agent's AgentVendorInterface.vendor_passthru() method. Change-Id: I6a0b55e3b825ce08c1d217da287ee127989741c6 Partial-Bug: #1267693
* pxe_ilo driver to call iLO set_boot_deviceFaizan Barmawer2014-09-242-2/+36
| | | | | | | | | | | | | | After switching from uefi to bios boot mode, one system reset is required in iLO for persistent boot device settings.pxe driver call set_boot_device() which internally calls ipmitool to set boot device to pxe, will fail in such scenarios. This fix proposes to change the management interface for pxe_ilo driver to call ilo set_boot_device using proliantutils ilo_client functions instead of IPMI call Change-Id: Idc0e3a765f447ae1d1118299e4815a06995e5414 Closes-bug: #1370466
* Merge "Pass ipa-driver-name to agent ramdisk"Jenkins2014-09-233-6/+9
|\
| * Pass ipa-driver-name to agent ramdiskRamakrishnan G2014-09-233-6/+9
| | | | | | | | | | | | | | | | | | | | This commit adds the change to pass ipa-driver-name to agent ramdisk. This enables agent ramdisk to do vendor-passthru lookup on the actual driver instead of the default 'agent_ipmitool' driver. Change-Id: I750097dc24e11b44d4ed6d7c314cb8fb470dfcb0 Closes-bug: #1371505
* | Merge "Revert "Revert "Search line with awk itself and avoid grep"""Jenkins2014-09-231-11/+3
|\ \
| * | Revert "Revert "Search line with awk itself and avoid grep""Lucas Alvares Gomes2014-09-181-11/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit was causing all tripleo ironic CI jobs to fail, this is because every time we change a ssh string we need to first whitelist it in the TripleO CI. Now the TripleO environment is ajusted and this patch can be merged again. The fix for the TripleO CI: https://review.openstack.org/#/c/120799/ Co-Authored-By: Motohiro OTSUKA <ootsuka@mxs.nes.nec.co.jp> Change-Id: I60936ac36f4aa3810679c9f2420a29ae072dfb8a
* | | Do not use the context parameter on refresh()Lucas Alvares Gomes2014-09-236-26/+24
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now all RPC objects already have a context embedded within them so we can ignore the context parameter on the refresh() method (it was the last method using this parameter). This patch also: * Update the Docstrings from the @remotable methods to let the user know that the context parameter is not being used. The @remotable decorator still requires that the method it's decorating have a context as it's first argument, but that's going to change in the future. * All code and tests were updated to not pass the context to refresh(), save() and destroy() methods. Closes-Bug: #1314732 Change-Id: Ibb338b909d99862ae048d605e66b8831d8c2128d
* | Merge "Do not cache auth token in Neutron DHCP provider"Jenkins2014-09-222-4/+4
|\ \
| * | Do not cache auth token in Neutron DHCP providerDmitry Tantsur2014-09-222-4/+4
| |/ | | | | | | | | | | | | | | | | Currently token expire after some time and deploy breaks. Also refactored all tests for Neutron DHCP provider, as many of them were just broken (e.g. using non-existing asserts). Change-Id: I38a8e95a09fd4737682e37b1162eb445fbc8012f Closes-Bug: #1371503
* | Merge "add_node_capability and rm_node_capability unable to save changes to db"Jenkins2014-09-221-4/+8
|\ \
| * | add_node_capability and rm_node_capability unable to save changes to dbFaizan Barmawer2014-09-201-4/+8
| |/ | | | | | | | | | | | | | | | | Changes to elements in existing node.properties dictionary will not get saved to database by node.save(context) method. The properties dictionary needs to be replaced by a new one to get the changes to be saved in the db. Change-Id: I3bb65d00e141aedcb1278c1a700d12c9b29f7232 Closes-bug:#1371816
* | Handle SNMP exception error.PySnmpErrorRuby Loo2014-09-181-4/+17
|/ | | | | | | | | In ironic.drivers.modules.snmp.py, SNMPClient._get_transport() could raise an SNMP exception. This is now caught and the ironic exception SNMPFailure is raised instead. Change-Id: I8816729b1b9483c213bb9e94b0816a88e609a91d Partial-Bug: #1267693
* Fix code error in pxe_ilo driverFaizan Barmawer2014-09-171-1/+2
| | | | | | | | The following code changes needs to be done for pxe_ilo driver: - vendor_passthru should be called with **kwargs, instead of kwargs Closes-bug: 1369545 Change-Id: I03d4773525332be85c0ff941306fb961793748e4
* Import modules for fake IPMINative/iBoot driversSergey Lupersolsky2014-09-161-2/+10
| | | | | | | | | | | | The fake IPMINative and iBoot drivers are not attempting to import the necessary Python modules for proper operation. To fix the issue, this patch attempts to import 'pyghmi' for the fake IPMINative driver and 'iboot' for the fake iBoot driver. If the module that is attempted to be imported is not available, then a DriverLoadError is raised. Change-Id: I5085a45c867c339ef900d89b5c830467398b3db1 Closes-Bug: 1362114
* Allow clean_up with missing image refJim Rollenhagen2014-09-161-4/+11
| | | | | | | | | | | This change allows clean_up to continue with missing image_source in Node.instance_info. This previouly failed in cases where: * A node failed to deploy and so didn't have image_source * A node was migrated from nova-baremetal Change-Id: I03543adc74f9da83fff58e0cffe34f36a055e19a Closes-Bug: 1368984
* Support for setting boot mode in pxe_ilo driverRamakrishnan G2014-09-123-5/+78
| | | | | | | | | | | | | This commit adds support for setting boot mode in pxe_ilo driver with the help of iloclient. It modifies the PXEAndIloDriver so that it uses IloPower for power management, IloPXEDeploy for image deployment, IloPXEVendorPassthru for vendorpassthru, IPMITool console and management interfaces. Change-Id: Ifb29c6b4c60ce17a7e5c15af7fb62e1c1e1c9ad7 Implements: blueprint uefi-boot-for-ironic
* Add uefi boot mode support in IloVirtualMediaIscsiDeployFaizan Barmawer2014-09-124-6/+182
| | | | | | | | | | The following functionality need to be added in iLO driver: - Add set_boot_mode function to iLO driver to switch between bios and uefi boot modes. - Validate boot_mode for IloVirtualMediaIscsiDeploy driver. Change-Id: Ic8496a2d97aab6634b573c85d379b446c49e04b9 Implements: blueprint uefi-boot-for-ironic
* Revert "Search line with awk itself and avoid grep"Derek Higgins2014-09-111-3/+11
| | | | | | | | This commit causes all tripleo ironic CI jobs to fail CI. The tripleo test env's need to be adjusted and redeployed first in order to accept a new command over ssh. Change-Id: Id057603717777777536f7ca947792862724b28f5
* Search line with awk itself and avoid grepMotohiro OTSUKA2014-09-111-11/+3
| | | | | | | | In ssh driver, some command sets are needlessly long. "awk" command can search line itself. This fixes it. Change-Id: Ie900aebe2f9ff7745c0456c5650204df84d0e799 Closes-Bug: #1365268
* Merge "Unify the sensor data format"Jenkins2014-09-101-3/+3
|\
| * Unify the sensor data formatHaomeng, Wang2014-09-101-3/+3
| | | | | | | | | | | | | | | | | | | | | | Ceilometer will consider the 'Sensor Reading' data contains the unit in the end of current value, ipmitool driver returns such format, however our ipminative driver returns the 'Sensor Reading' value without the unit, so we have to unify them for Ceilometer to provide same sensor data format. Closes-Bug: #1367620 Change-Id: I6796bf513730259b7a27715252a72879b11d3bae
* | Merge "Translator functions cleanup part 2"Jenkins2014-09-0919-128/+104
|\ \
| * | Translator functions cleanup part 2Vladyslav Drok2014-09-0919-128/+104
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This part fixes ironic/drivers folder. Some modules use _ function for log translation, even when the translated string is passed to e.g. LOG.warn function. This patch fixes it, using translator functions appropriate for corresponding log levels. Translator functions, imported from ironic.openstack.common.gettextutils are now imported from ironic.common.i18n. Translator functions are imported the same way across all modules. All places that are changed conform to http://docs.openstack.org/developer/oslo.i18n/guidelines.html Partial-bug: #1364813 Change-Id: I77cf2582d2e9173d57da473cba118fd8b48a8735
* | | Merge "Fix agent PXE template"Jenkins2014-09-091-1/+1
|\ \ \
| * | | Fix agent PXE templateJim Rollenhagen2014-09-091-1/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | This regressed when the iLO/agent code landed. This commit: * Fixes the template * Adds a test for the agent PXE template * Removes unused parameter ipa-advertise-url from the template Change-Id: I41a0189ce5d14e1f1e6b7be9872d029e157fe3c2
* | | Merge "Remove unnecessary mapping from Agent drivers"Jenkins2014-09-091-16/+3
|\ \ \
| * | | Remove unnecessary mapping from Agent driversLucas Alvares Gomes2014-09-051-16/+3
| |/ / | | | | | | | | | | | | | | | | | | Both vendor methods comes from the same VendorInterface, so no need to use the MixinVendorInterface. Change-Id: I9d6cea289555a79f1ccb1c6698809e196e9e4255
* | | Merge "Use oslo.utils instead of ironic.openstack.common"Jenkins2014-09-096-8/+13
|\ \ \
| * | | Use oslo.utils instead of ironic.openstack.commonVladyslav Drok2014-09-096-8/+13
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | DRAC driver and ISCSI deploy module still use excutils, importutils and strutils from ironic.openstack.common. Now oslo.utils is used instead. Closes-bug: #1366032 Change-Id: I059527c3a6f90ef5bb93061c2a069e1af1a91b74
* | | Minor fixes for ipminative console supportlinggao2014-09-051-3/+14
|/ / | | | | | | | | | | | | | | | | This patch fixed a few minor problems left over from https://review.openstack.org/#/c/97331/. It added some missing exceptions in the doc strings. It also fixed a spelling error in a testcase etc. Change-Id: Ic8b1903d7ec429abb72999795631a8cbc7da05f5
* | Merge "Interactive console support for ipminative driver"Jenkins2014-09-044-1/+106
|\ \
| * | Interactive console support for ipminative driverlinggao2014-09-034-1/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds interactive serial console support for ipminative driver using shellinaboxd and pyghmi. A new class called NativeIPMIShellinaboxConsole implements the ConsoleInterface. Closes-Bug: 1359758 Change-Id: I9117c695af40044491fb7f213aa15e841e803d1c
* | | IloVirtualMediaAgent deploy driverRamakrishnan G2014-09-034-6/+134
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit introduces a new deploy driver which uses iLO virtual media to boot up proliant baremetal nodes, and uses agent to deploy the baremetal nodes. This patch also changes agent pxe config template slightly, so that the names of agent ramdisk parameters generated in code and those expected by agent ramdisk are same. Change-Id: Ia5677dff294bc146b864bed180fbda939cf9bb38 Implements: blueprint ilo-virtualmedia-ipa
* | | IloVirtualMediaIscsi deploy driverRamakrishnan G2014-09-034-7/+658
| | | | | | | | | | | | | | | | | | | | | | | | | | | This commit introduces a new iLo deploy driver which uses virtual media to boot up proliant baremetal nodes, and uses iSCSI to deploy the baremetal nodes. Change-Id: I98f47ed6082a3a28fce3148f6d5177cdb5c61881 Implements: blueprint ironic-ilo-virtualmedia-driver
* | | Merge "Adds SNMP power driver"Jenkins2014-09-033-0/+695
|\ \ \
| * | | Adds SNMP power driverStig Telfer2014-09-033-0/+695
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a new PowerDriver module for remote control of node power by enabling or disabling sockets on a rack power strip via SNMP. Implements: blueprint ironic-snmp-power-driver Change-Id: Ib16781eaa9737525c4d8a9231ecd9e72d7e2645e Co-authored-by: David Hewson <dhewson@cray.com> Co-authored-by: Mark Goddard <mgoddard@cray.com>
* | | | Merge "Add UEFI based deployment support in Ironic"Jenkins2014-09-034-10/+72
|\ \ \ \ | |_|/ / |/| | |
| * | | Add UEFI based deployment support in IronicFaizan Barmawer2014-09-034-10/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most of the new hardware comes with UEFI boot mode, which has several technical advantages over the traditional BIOS system. Operator inform the boot mode to ironic using the "capabilities" property of the node. The operator may add a new capability "boot_mode=uefi" or "boot_mode=bios" in "capabilities" within "properties" of the node. Add new pxe config options: - "uefi_pxe_bootfile_name": specify the efi bootloader to be used. - "uefi_pxe_config_template": specify the respective efi bootloader config template. As of now only elilo.efi bootloader is supported. elilo.efi bootloader requires the configuration file to be named after the ip-address assigned by the DHCP server. Implements: blueprint uefi-boot-for-ironic Co-Authored-By: Jim Rollenhagen <jim@jimrollenhagen.com> Change-Id: I0ad399b2207d7c66f6887e56470ba553b3c87b53
* | | | Merge "Control extra space for images conversion in image_cache"Jenkins2014-09-031-27/+45
|\ \ \ \ | |_|/ / |/| | |
| * | | Control extra space for images conversion in image_cacheYuriy Zveryanskyy2014-09-031-27/+45
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | Size of image converted to raw format can be growing up to virtual_size. This patch adds new _fetch_to_raw function to image_cache which try to free extra space for image conversion if needed. Closes-Bug: #1356362 Change-Id: I69712b078113ef0640859389ef4ab9039135f612
* | | Merge "Fix minor issues in the DRAC driver"Jenkins2014-09-034-32/+41
|\ \ \ | |/ / |/| |
| * | Fix minor issues in the DRAC driverLucas Alvares Gomes2014-09-034-32/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a following patch of 2eb3c12ce3fb2b2eb4408367f2c950724a098d93. The issues this patch fixes are: * Put the ReturnValue constants in a common place so it can be used by the power and management interfaces code. * Move the filter object creation to inside the client. This also adds a new exception DracInvalidFilterDialect which is raised if when an invalid filter dialect is specified. * Fix the docstring of the find_xml method to reflect the values returned in case an element is not found. * Move the helper test function _mock_wsman_root() to a common place and update tests to use it. Change-Id: Iefc3993f61e32a3a50faf4b9bd80aaab6ae1d3bf
* | | Merge "Add send-data-to-ceilometer support for pxe_ipminative driver"Jenkins2014-09-031-3/+43
|\ \ \ | | |/ | |/|
| * | Add send-data-to-ceilometer support for pxe_ipminative driverHaomeng, Wang2014-09-031-3/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch will implement pxe_ipminative driver *get_sensors_data* method to get sensor data by pyghmi get_sensor_data() method call. Spec: https://github.com/openstack/ironic-specs/blob/master/specs/juno/send-data-to-ceilometer.rst Related patch: https://review.openstack.org/#/c/72538/ Change-Id: I2368e78e39970b7a3cffe3d8cb2dd3fce5056635
* | | Fix typo in PXE driver docstringsKyle Stevenson2014-09-021-2/+2
| | | | | | | | | | | | | | | | | | | | | Replaces two misspellings of "combinding" with "combining." Change-Id: I8295e61411845175daa330a22c87b8ba7c3f9cec Closes-Bug: #1364671
* | | Merge "Add boot_device support for vbox"Jenkins2014-09-021-3/+14
|\ \ \ | |_|/ |/| |
| * | Add boot_device support for vboxMotohiro Otsuka2014-09-011-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | In the Ironic ssh driver, command set of 'set_boot_device' and 'get_boot_device' were not implemented on VirualBox. This fixes it. Change-Id: Icd19c7d1b5c11109cb6b400e99a6e7f2baa73d22 Closes-Bug: #1360017
* | | Merge "Implements the DRAC ManagementInterface for get/set boot device"Jenkins2014-09-025-8/+363
|\ \ \
| * | | Implements the DRAC ManagementInterface for get/set boot deviceLucas Alvares Gomes2014-09-015-8/+363
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | What it says. The get_sensors_data() won't be implemented as part of this patch because it's outside the scope of the blueprint. Co-Authored-By: Imre Farkas <ifarkas@redhat.com> Implements blueprint drac-management-driver Change-Id: I9cae3156b6af016bfbf64cb3c117fdec8536f714
* | | Remove gettextutils _ injectionVladyslav Drok2014-08-2921-4/+24
|/ / | | | | | | | | | | | | | | | | | | Now that ironic supports oslo.i18n, using the install function to inject _ into the builtin has been deprecated. New i18n common module used instead. In one module _ was imported from gettextutils, now also changed to i18n import. Closes-bug: #1346406 Change-Id: I672a975d479991982c24031e834a26e2c2811890