673 Commits

Author SHA1 Message Date
Jenkins
c16330b38c Merge "Imported Translations from Zanata" 2017-08-20 22:06:47 +00:00
Jenkins
644b05e119 Merge "Update proliantutils version for Pike release" 2017-08-19 11:47:39 +00:00
Jenkins
194922a007 Merge "Add 'hardware type' for Dell EMC iDRACs" 2017-08-19 04:39:38 +00:00
Jenkins
5434b05176 Merge "Fix DRAC classic driver double manage/provide" 2017-08-19 04:25:30 +00:00
Félix Bouliane
4acc0ed4ce Make SNMP UDP transport settings configurable
SNMP timeout and retries are now configurable through ironic.conf. This
allows to have custom configurations when certain PDUs are slower than
others.

The config defaults are the same defaults that cmdgen.UdpTransportTarget
uses (1.0 second timeout and 5 retries). The config is now reflecting
these defaults.

Closes-Bug: #1640932
Change-Id: I2490902ad2e39e8e4dc34484799a0dae96bc57f8
2017-08-18 14:42:21 +00:00
Richard Pioso
d75fecc974 Add 'hardware type' for Dell EMC iDRACs
The ironic project is engaged in a driver composition reform [0] which
introduces dynamic drivers. That reform places hardware vendors in
charge of defining a new form of drivers for their hardware. The new
form is called 'hardware type'. The reform will deprecate [1] the
existing ironic drivers, which are now referred to as 'classic drivers'.

This change adds a single new 'hardware type', 'idrac', for servers
controlled by Dell EMC integrated Dell Remote Access Controllers
(iDRAC).

[0]
http://specs.openstack.org/openstack/ironic-specs/specs/7.0/driver-composition-reform.html
[1]
http://specs.openstack.org/openstack/ironic-specs/specs/not-implemented/classic-drivers-future.html

Change-Id: Ie332a5adebfc229a79663c771c9f4409174dd8c9
Closes-Bug: #1705741
Related-Bug: #1676387
2017-08-18 14:41:05 +00:00
Richard Pioso
86e3a100a3 Fix DRAC classic driver double manage/provide
This change fixes an issue that caused a node using a Dell EMC
integrated Dell Remote Access Controller (iDRAC) classic driver,
'pxe_drac' or 'pxe_drac_inspector', to be placed in the 'clean failed'
state after a double manage/provide cycle, instead of the 'available'
state.

The deploy interface implementation used by iDRAC classic drivers has
been class ironic.drivers.modules.drac.deploy.DracDeploy, which is
derived from class ironic.drivers.modules.iscsi_deploy.ISCSIDeploy. The
only difference between them is that DracDeploy overrides the
prepare_cleaning() method to prevent the booting of the Ironic Python
Agent (IPA) ramdisk when only out-of-band RAID clean steps are
requested. However, it caused the issue and did not have its intended
effect, because Ironic Conductor boots the ramdisk regardless. The
Ironic Conductor should be modified to preclude the booting of the IPA
ramdisk fix, rather than leaving it to individual drivers.

The iDRAC classic drivers' deploy interface implementation has been
changed to ISCSIDeploy. Since class DracDeploy is no longer needed, its
source code and automated tests have been removed.

Change-Id: Ib2c9b7f9f780aaf5f6345825b1f6c9ddb4f9c41f
Closes-Bug: #1676387
Related-Bug: #1572529
Related-Bug: #1705741
2017-08-18 14:40:18 +00:00
OpenStack Proposal Bot
7bb6379af7 Imported Translations from Zanata
For more information about this automatic import see:
https://docs.openstack.org/i18n/latest/reviewing-translation-import.html

Change-Id: Iba2378f6cfacefd2c64537e733b4253545e29eac
2017-08-18 07:17:54 +00:00
1e25b31268 Update reno for stable/pike
Change-Id: Icbd85f08870ec4e5cc9a32a21c92172971ede964
2017-08-17 14:31:17 +00:00
Jenkins
1946eb939f Merge "Revert "[reno] Add prelude for Pike release"" 2017-08-17 13:44:42 +00:00
Julia Kreger
a151c26f47 Revert "[reno] Add prelude for Pike release"
This reverts commit 7bb72eb9a2adbe72fdb0ecefc7f3cea65009040d.

Change-Id: I5e305c338f0a0a4cf9f1cc4ee761e410d05b27ca
2017-08-17 13:20:54 +00:00
Jenkins
45e6d4a3f8 Merge "[reno] Add prelude for Pike release" 2017-08-17 12:51:55 +00:00
Jenkins
9d914c8593 Merge "[releasenotes] update irmc's boot-from-volume support" 2017-08-17 12:20:27 +00:00
Ruby Loo
888610f43a [releasenotes] update irmc's boot-from-volume support
This removes a lot of information from the release notes, since it was
too verbose. Instead, it links to the iRMC driver documentation that
includes the details of this feature.

This is a follow up to 70530f9a668af6d59a3e72c230592a4b0dc2a1b8

Change-Id: I6d25baf1e89a95734316c663cd0961399436ab9e
Partial-Bug: #1677436
2017-08-16 15:59:05 -04:00
Ruby Loo
7bb72eb9a2 [reno] Add prelude for Pike release
This adds the Prelude section for the Pike release.

Change-Id: I60cf5c18540b6abb1ecd4c046ab1e51087c9aa77
2017-08-16 15:40:57 -04:00
Jenkins
40a504d945 Merge "[reno] update" 2017-08-16 12:40:33 +00:00
Jenkins
b5b1e37fc1 Merge "iRMC: Support volume boot for iRMC virtual media boot interface" 2017-08-15 19:27:20 +00:00
Debayan Ray
9d8ca37a37 Update proliantutils version for Pike release
This commit updates the proliantutils version required in
Ironic to 2.4.0 for Pike release. This version of
proliantutils includes the following:

  1. Support for Gen10 servers using Redfish protocol.
  2. ``local_gb`` defaults to 0 (zero) when no disk could be
     discovered during inspection.
  3. Provides one-pass disk erase support using HPE SSA CLI when
     sanitize disk erase not supported for Proliant hardware
     manager in IPA.

Change-Id: Id8eb962854d994f8a23921d4195c7af1ffb00760
2017-08-15 15:05:17 -04:00
Ruby Loo
d85d029520 [reno] update
Updates several release notes to fix links, address grammatical
issues and other minor cleanup.

Change-Id: I8ed7206badad49516016d413c074ce12ade2d907
2017-08-15 13:26:20 -04:00
Jenkins
5884d431f8 Merge "Add hardware types to support Cisco UCS Servers" 2017-08-15 11:50:17 +00:00
Jenkins
62fd4d1a6e Merge "Rolling upgrade procedure documentation" 2017-08-14 14:30:01 +00:00
Sam Betts
c268b1e236 Add hardware types to support Cisco UCS Servers
Change-Id: Ib0db11f3e43d17c34278453cdc3e34907034b46f
2017-08-14 10:54:11 +01:00
Dmitry Tantsur
c7d7f18ba2 Update the resource classes documentation based on recent progress
The feature works now, so we can remove uncertaincy from the docs. Also adds
an upgrade release note to populate the resource_class field before the upgrade.

Change-Id: I22234aafdd195dd76c621b93042a67cdb36f3e65
2017-08-11 17:38:56 +02:00
Jenkins
f16e7cdf41 Merge "Prevent changes of a resource class for an active node" 2017-08-11 14:43:09 +00:00
Jenkins
06cb089a1a Merge "Adds hardware type for SNMP powered systems" 2017-08-11 12:37:58 +00:00
Dmitry Tantsur
6525a0da29 Prevent changes of a resource class for an active node
Doing so would confuse nova-scheduler, and may result in attempts
to schedule a new instance on such node. The API version is not
updated, as this behavior is broken already, we're just moving
the breakage to the API level.

Change-Id: I758587d36c927c8eed852170728f6267ae18f001
2017-08-11 11:58:12 +02:00
Jenkins
4672d6f98f Merge "Release notes clean up for the next release" 2017-08-10 15:48:10 +00:00
Jenkins
3d8626dc10 Merge "Add a flag to always perform persistent boot on PXE interface" 2017-08-10 15:44:34 +00:00
Hironori Shiina
70530f9a66 iRMC: Support volume boot for iRMC virtual media boot interface
This patch enables iRMC virtual media boot interface to configure
remote boot. When a node is set up for boot-from-volume, this
interface registers volume boot information via out-of-band network.
This interface supports iSCSI and FibreChannel.

For the configuration, some extra parameters of volume connectors are
required by python-scciclient. These parameters should be set to
node's driver_info by an operator.

Partial-Bug: #1677436
Change-Id: I387ae9382ebc561bc721dcfed6416b25f4809183
2017-08-10 22:21:55 +09:00
Grzegorz Grasza
519e379c78 Rolling upgrade procedure documentation
This extends the upgrade guide with information on how to perform
a rolling upgrade with minimal downtime. It also adds a new section
for offline (cold) upgrades.

Partial-bug: #1526283
Co-Authored-By: Ruby Loo <ruby.loo@intel.com>
Change-Id: If7f41ccbfd8d3128a142cd6e4f090c5c9825cf60
2017-08-08 13:15:28 +00:00
Dmitry Tantsur
de581d5518 Release notes clean up for the next release
Change-Id: I4b911928bcdb65a9950dfe955afc5a4f554d9bd1
2017-08-08 14:30:02 +02:00
Luong Anh Tuan
802c86ef04 Secure boot support for irmc-pxe driver
This patch adds secure boot support for irmc-pxe boot interface as
follows:
- Implement secure boot support for irmc-pxe boot interface
- Update version of python-scciclient supporting secure boot
- Update irmc-pxe driver documentation

Change-Id: Ie82ff07421d23b5c0d26e2d2fbde33fc9f8e3c42
Partial-Bug: #1694649
2017-08-08 11:32:55 +07:00
Shivanand Tendulker
cb2c7c206f Adds hardware type for SNMP powered systems
Added hardware type 'snmp' for SNMP powered systems

Change-Id: I68b35e8391c2365e6380dda7b67c8c3747d4b3e7
Closes-Bug: #1704977
2017-08-07 10:28:16 -04:00
Fellype Cavalcante
049fd40719 Add a flag to always perform persistent boot on PXE interface
With the proposal to solve the bug that PXE interface should
be using non-persistent boot for cleaning/deploying phases as
default(commit: c7091fb8e2898e526f8ce242f50096a2cabeb1fa), it's
necessary to create a flag to enable persistent behavior when
you set the boot device.
This flag will override a non-persistent behavior in the
cleaning and deploy process.

Change-Id: I1f47393c17a3f5319fffd963ec0a016b41865c5d
Closes-Bug: 1703945
Co-Authored-By: Stenio Araujo <steniaraujo@lsd.ufcg.edu.br>
2017-08-04 16:28:30 -03:00
Jenkins
beb14094d4 Merge "Remove SSH-based driver interfaces and drivers" 2017-08-04 02:20:49 +00:00
Jenkins
11112c8289 Merge "Add hardware type for HPE OneView" 2017-08-04 00:00:01 +00:00
Jenkins
408eaa3707 Merge "Revert "Wait until iDRAC is ready before out-of-band cleaning"" 2017-08-03 14:01:30 +00:00
Grzegorz Grasza
54efd31239 Add new dbsync command with first online data migration
This adds the new command 'ironic-dbsync online_data_migrations'.
To limit downtime during upgrades, data migrations will be done online
with migration scripts that could be run during normal operation of an
ironic cluster, after the upgrade but before the next one.

Each migration script should ensure that all related DB records are
migrated to the new format. Scripts can detect the format based on
the object version which is stored in the version column.

The online data migration has one script; a function that backfills
the new version column, using versions of objects from the release
prior to this.

This includes code to check the object versions for compatibility with
an ironic release. However, the check is turned off (and will be turned on
in Queens), since we need to boot-strap the new version column before
we can turn the check on. To do this check, we need to keep a list of all
supported versions for every object; release_mapping.RELEASE_MAPPING was
modified so that the object versions is now a list instead of one value.

Change-Id: I1a9fa829951ecf98cae6896d82ba20cf89062394
Closes-Bug: #1585141
Partial-bug: #1526283
Co-Authored-By: Ruby Loo <ruby.loo@intel.com>
2017-08-02 13:33:37 -04:00
Jenkins
f15934eb8d Merge "Enable OSProfiler support in Ironic" 2017-08-02 16:26:57 +00:00
Hugo Nicodemos
b7eec1560c Add hardware type for HPE OneView
Adds hardware type 'oneview' for HPE OneView supported
servers. 'oneview' hardware type supports deploy interfaces:
'oneview-iscsi' and 'oneview-direct' based on 'iscsi' and
'direct' deploy interfaces respectively, using 'pxe' boot.

Change-Id: I0e32f235d985016bac0272d4ad3c8edd9edda3c7
Closes-Bug: #1705544
2017-08-02 13:24:31 +00:00
Jenkins
ccd39bbcb4 Merge "Change ramdisk log filename template" 2017-08-01 15:27:43 +00:00
Pavlo Shchelokovskyy
3d9895cc0b Remove SSH-based driver interfaces and drivers
SSH drivers are being unsupported for about a year now. All current
stable branches of ironic are officially supporting IPMI-capable HW
simulation via virtualbmc.
All ironic-related gate jobs have already been switched
to not use or enable those drivers.

This patch finally removes SSH-based power and managemtnt driver interfaces
and all classic drivers using those from ironic code and documentation.
Related exceptions and `ssh_connect` function, together with dependency
on `paramiko` package are removed as well.

Change-Id: Ieda7249b9cd78e3be1eff37804996295fc8d3969
Closes-Bug: #1570301
Depends-On: I9b60c9fa24652e9e64e787cd4e5b0152f51e7a28
2017-08-01 12:39:39 +00:00
Jenkins
c8884754bb Merge "Rolling upgrades support for create_port RPCAPI" 2017-07-31 18:07:20 +00:00
Jenkins
1d1f2d92a8 Merge "Changes log level of a message" 2017-07-31 11:54:50 +00:00
wangkf
3b7e6abcbc Change ramdisk log filename template
ironic collects ramdisk logs from agent, and save it to
/var/log/ironic/deploy.

The time stamp part of log filename is formatted as '%Y-%m-%d-%H:%M:%S',
as an example:

    7b52d13a-9372-448d-9252-fffbaf2db942_1fb52a75-04b6-4c73-80c4-\
    8d49dc30f650_2017-07-06-09:03:18.tar.gz

The colon is not handled properly by tar, it fails to untar a file
with colon in file name.

This patch provides a workaround by changing colon with dash in time
stamp.

Closes-Bug: #1702672
Change-Id: I1d60939768ffa75de050aa309a3203de553ae877
2017-07-31 19:50:25 +08:00
Mark Goddard
fc1e18e3e4 Rolling upgrades support for create_port RPCAPI
The new field 'physical_network' was added to Port in version
1.7, and port creation was moved from the API to the conductor
service in commit 9e3f4121865807294dd3768b095b67eb01ef539e.

This change adds a method can_send_create_port() to the conductor
RPCAPI that allows the caller to determine whether the conductor is able
to create ports. During a rolling upgrade this may return False, and the
API will need to determine whether it is able to create the port locally
as was done previously.

The create_port RPC method was added to support validation of the
physical_network field of ports in portgroups. A port may therefore be
safely created in the API service if it is not a member of a portgroup.
If the port being created is a member of a portgroup, then it cannot be
safely validated by the API service and the request must be rejected.

Change-Id: I8c417cba085f61c3d2ffe1f7e97c64fa85a014cb
Related-Bug: #1666009
Related-Bug: #1526283
2017-07-26 18:23:17 +01:00
Shivanand Tendulker
8a73b344f3 Changes log level of a message
This fix changes the log level of a message to 'info'. The message
is related to deletion of swift temporary object when object is not
found on the swift. The swift temporary object being attempted for
delete has a expiration time hence this message need not be of
'warning' level.

Change-Id: I7ac52bd0e1ef61d35722dce352e6bc1844d3d2d2
Closes-Bug: #1629286
2017-07-25 17:43:32 +00:00
Xavier
8f45317d43 Removes agent mixin from oneview drivers
This patch removes the agent mixin interface from oneview
drivers and adds a flag based solution instead. Once a set
boot device operation needs to be performed, the operation
is stored to driver_internal_info until the server power
on. Before power the server on again, the operation stored
is performed and then the server is powered on.

Change-Id: I8dabf7ef1ff6e44c062310c5cb3509e545585c0a
Closes-Bug: #1503855
2017-07-25 08:29:12 -03:00
Jenkins
7cbcb6003d Merge "Start passing portgroup information to Neutron" 2017-07-24 13:42:06 +00:00
Jenkins
15db6df2a5 Merge "Allow updating interfaces on a node in available state" 2017-07-24 05:49:09 +00:00