Currently method "_ensure_config_dirs_exist" creates tftpboot/<uuid>
dir with wrong permission. This is due to the system umask setting
which overrides the default permission of 0777 to 0755 or 0750. When
the permission is 0750, BM can't get deploy_kernel and ramdisk from
tftpserver. This may happen only when tftp process is launched from
other user than root and as result can't read files created by Ironic.
So this patch tries to fix the issue by explicitly changing the
permissions defined in the config option ``[pxe]/dir_permission``.
Change-Id: I3119ec7ae31bf82f716bf082fa4c3296d6aa3587
Closes-bug: #1655568
This checks the sort key, to make sure the specified field
is allowed/available in the specified API microversion.
If it is not allowed, a 406 HTTP status is returned.
This affects requests to get lists of nodes, port groups,
and ports.
Change-Id: Id5fb44b8b7fe989514dbae4b60cef4a34d47e52b
Closes-Bug: #1659419
This updates the release note for the new 'ilo' hardware type
to mention that it also supports 'iscsi' deploy interface.
The separate release note about ilo supporting iscsi deploy interface
is removed.
This is all going into the same release, and it is confusing to have
two separate release notes about the ilo hardware type.
Change-Id: I4087d7f805dc7710b554c102f428b92cead1ebf9
Related-Bug: #1689274
The classic iLO driver 'pxe_ilo', uses 'iscsi' deploy method and
there by avoids dependency on Swift Temp URL for glance images.
With no support to 'iscsi' deploy interface, 'ilo' hardware type
do not provide complete compatibility with all classic iLO drivers.
This commit adds support for 'iscsi' deploy interface for 'ilo'
hardware type so that one could compose a driver for a node that
matches any of the classic iLO drivers.
Closes-Bug: #1689274
Change-Id: I6c5f4d68020bcf58b83d74f45bb059f1807a80ee
Calls to 'get_service_url' should use the
'region_name' parameter. Before they were
incorrectly using 'region' as the parameter name.
Change-Id: Ic839ba6dbd5ca4dc9c7d87cf23582b8cfc393731
Closes-Bug: #1687866
Added hardware type 'ilo' for HPE ProLiant servers based on iLO 4
management engine.
'ilo' hardware type only supports 'agent' deploy method and does
not support 'iscsi' deploy method.
Change-Id: Id2186717633630fabe11041634759adb3b74a0f9
Closes-Bug: #1666787
The default log level of oslo.messaging was set on the python package
name, which means it didn't take effect for all logs. This fixes it
adding it on the namespace name as well.
Related-Bug: #1685148
Change-Id: I0263717b9fd4d3c6ee4083c71df9b4b26401a39b
The release notes for 8.0.0 are missing. This adds them to the
current series release notes.
Change-Id: I29ab11b8d0a5a69c7257a39811aeb45ce015616b
Partial-Bug: #1682147
If original disk image has ID of 0x00000000 it's overwritten by parted
with a non-zero value. The original ID is stored in pxelinux.cfg/* config
file and the node fails to boot.
Reading the ID was moved to after config drive setup so that the final ID
is returned.
Change-Id: Icbfa3e93bf6252177a0baa5f89bf4565ff331520
Closes-Bug: #1685093
Adds configuration parameter ``terminal_timeout``
to section [console] to allow operators to set the timeout
value for the Socat console session.
Change-Id: I9a83a3e2b2d16117df0f9c01b6c8b6c86639696c
Closes-Bug: #1675404
This patch is adding a redfish driver based on the sushy library. This
is just a basic driver that currently supports:
* Power: Hard power on/off/reboot, soft power off/reboot
* Management: Setting the boot device (PXE, disk, cd-rom and bios)
and its frequency (persistent or not)
* Management: NMI Injection
* SSL authentication
Unittest coverage for the redfish modules is now in 100%, let's try to
keep it this way (-:
Documentation and DevStack updates will be done on subsequent patches.
Partial-Bug: #1526477
Change-Id: I14470edff65cd14bb73263ec7310559a8eaa6c84
The OneView drivers deprecated support for pre-allocation model
in Newton cycle (6.1.0), making the dynamic allocation the default
model[0]. This patch removes code pertaining to pre-allocation
feature from OneView drivers. The dunamic allocation feature should
be used instead.
[0] https://specs.openstack.org/openstack/ironic-specs/specs/not-implemented/oneview-drivers-dynamic-allocation.html
Change-Id: I7789ffc0ebc6e42f58b184c0781fb3b122c00323
Closes-Bug: 1681509
This patch removes the deprecated DHCP provider method
``update_port_address``. For users who created their own network
interfaces or DHCP providers the logic should be moved to a custom
network interface's ``port_changed`` and ``portgroup_changed``
methods. The following methods should be implemented by custom
network interfaces:
* ``vif_list``: List attached VIF IDs for a node.
* ``vif_attach``: Attach a virtual network interface to a node.
* ``vif_detach``: Detach a virtual network interface from a node.
* ``port_changed``: Handle any actions required when a port
changes.
* ``portgroup_changed``: Handle any actions required when a
port group changes.
* ``get_current_vif``: Return VIF ID attached to port or port group
object.removes deprecated by [0] DHCP provider update_port_address().
[0] 9088891ce72081684761e5cf54d3b3eabab0ca37
Change-Id: I887f31937c576ff8933e7c1454e0b2cb0962e340
This is a follow up to 459fe314fa65111d4b1fd4f8210117903a778093
Minor issues in the code and tests are fixed, the release note is added,
configuration options are described as part of not yet exposed feature.
Change-Id: Ib466ee3970dcc1e141ddac38a54544f6a011549e
Partial-Bug: #1559691
Currently config drive can be stored in swift with keystone
authentication. This change allows ironic to store the config drive in
ceph radosgw and use radosgw authentication mechanism that is not
currently supported. It uses swift API compatibility for ceph radosgw.
New options:
[deploy]/configdrive_use_object_store
[deploy]/object_store_endpoint_type
Deprecations:
[conductor]/configdrive_use_swift
Replaced by: [deploy]/configdrive_use_object_store
[glance]/temp_url_endpoint_type
Replaced by: [deploy]/object_store_endpoint_type
Change-Id: I9204c718505376cfb73632b0d0f31cea00d5e4d8
Closes-Bug: #1642719
After a node is saved to the database, we weren't updating the
Node object to reflect what was saved. This caused a problem
where the node's update_at field was incorrect. It was fixed
in 065326c0f55a73c99706148f7bfbbec87ea863bc by explicitly
setting node.update_at. However, that doesn't address other
node fields that may be out of sync.
The more correct fix would be to do a similar thing that (most
of) the other Objects do, which is for the node to update itself
via ._from_db_object().
Doing this revealed several incorrect tests and code in the conductor
and agent where changes to the node's dictionaries were incorrectly
being set and thus, not being saved. Those are fixed in this patch.
Change-Id: Ia84cd60c1a4eabcc1ad0a756124c338fa9f644c8
Closes-Bug: #1679297
Related-Bug: #1281638
These were removed in 330ba8c502880a16db4d2673ab36358f559711ec but was
missing a release note. Add one in.
Change-Id: I34521c459805c8d4bce6830c0b31bd252df714fb
The method build_instance_info_for_deploy in
ironic.drivers.modules.agent was deprecated in the Ocata cycle
(7.0.0). It is no longer supported. The method
build_instance_info_for_deploy() from
ironic.drivers.modules.deploy_utils should be used instead.
Change-Id: I88dfb0b84709ca3545bb4d4384bfad58ec2eb0a0
Closes-Bug: #1678902
The ipminative driver was marked as unsupported on September 28, 2016,
and an email was sent to the list on March 9th, 2017 asking for
volunteers to run third-party CI to save the driver from deprecation.
Additionally, many ironic contributors who also deploy ironic have
reported instability while using this driver. For these reasons it's
being removed from the main ironic tree. If there are any users still
interested in this driver, they are invited to host it elsewhere.
Change-Id: I9bc9f4cbd916f040a636b967ec5556197ad3d8a8
Closes-bug: #1671532
The configuration option [ilo]/clean_priority_erase_devices was
deprecated in the Newton cycle (6.1.0). It is no longer supported.
The option [deploy]/erase_devices_priority should be used instead.
Closes-Bug: #1677449
Change-Id: Ib9110e9bd395d4a87aeb3981073530fb59949a47
Agent based deploy do not call boot.clean_up_instance() during node
teardown. This is required so that instance clean up can happen as
part of node teardown.
Change-Id: I6077b69f17ce462b6aae1b16fdb40158cf111c5e
Closes-Bug: #1676321
core_interfaces and standard_interfaces are both static members of BaseDriver
we need to take a copy of them before appending to them.
Change-Id: Ic6edc5e49a25849c7871dbc9e6e1d5a5eb229e57
Closes-Bug: #1672457
This commit updates the proliantutils version required in Ironic
to 2.2.1. This version of proliantutils includes HPSUM firmware
update support and updation of requirements to match
global-requirements (required to fix third party CI gate jobs)
Change-Id: Ife96638b6262d22b3aa82155df3d7e4f525bd22b
This patch ensure that there is no iscsi session left after
failed deployment.
Change-Id: I569933f27746da65b1d22ba9e9279439e2e792cf
Closes-Bug: #1632649
Nova dropped support for glance v1 in Ocata and we're going
to disable glance v1 in CI runs for Pike. The glance v1
API is deprecated so we should start burning it out of the
system in all of the projects.
Closes-Bug: #1670423
Change-Id: I1398f81b28e1b000ee110c159e498b72e3746109
Remove overwriting the default value of db_max_retries, instead use
default value defined by oslo.db which is 20.
Adjust the default value of db_max_retries in the release note and sample
configuration file.
Closes-Bug: #1671629
Change-Id: I1e5f632d687c1cebab895cc91958d502b9fce884