Write down our relatively unwritten context of what
expectations exist for contributions and timelines
related to contributions.
Also performed some minor updates and added a note for
future document revision in the Rocky cycle.
Co-Authored-By: Ruby Loo <ruby.loo@intel.com>
Change-Id: I2d80043f0556a28fe355034ca66883384c408710
This patch enables receiving agent_version as part of heartbeat, and
stores this information on driver_internal_info. This is so that Ironic
can dynamically adjust which features and parameters it uses based on
which version of the agent is being used.
Change-Id: I400adba5d908b657751a83971811e8586f46c673
Partial-Bug: #1602265
This updates the documentation to include API version pinning
during the rolling upgrade process.
Change-Id: I493cd6229a8bd68720da4d5c25983a3662f4f35a
Closes-Bug: #1708549
Fix the documentation to show that ironic version 9.2.0 (not
10.0.0) contains support for specifying the configdrive to a
node rebuild request.
Change-Id: I58fedd194b94ac744df220b844d2c4b645f95058
The contributor documentation's main page now includes links to
our specifications and priorities.
Change-Id: Ibcae0f8cbf0ed89df1d61ef21788b93a8aedfef0
First, "Enabling Drivers" is a really confusing title, since this page
links to complete driver documentation. It also links to IPA docs and
the PXE driver interface.
Next, our documentation is full of remarks about e.g. "pxe_* family of
drivers", which are misleading in the presence of hardware types and
the pxe_agent_cimc driver. We also have mentions of "iscsi deploy method"
without detailed explanation of how this method relates to hardware types
and classic drivers.
This change consolidates drivers and interfaces documentation under
the more clearly named root page. A new page is created with sections for
both deploy interfaces to use for linking from wherever a link to
a particular deploy interface is required.
Change-Id: Ifb8328ccaaac443fac276873e2c375ebcf983f03
Adds a new 'Rolling Upgrades' developer document that describes the
design (from the associated spec) and includes notes on what to do
when developing a new feature or modifying an IronicObject.
Replaces the rolling upgrades information in the code contribution
guide, with a link to this new Rolling Upgrades page.
Change-Id: I5cc0b42da6e9e66f5c607bddbb3a2232cda97c6f
Closes-Bug: #1526283
Previously, the configdrive could only be set when setting
the node's provisioning state to "active". When rebuilding,
the old configdrive was used and therefore was never updated
with latest content.
This change introduces the API microversion 1.35 which will allow
configdrive to be provided when setting the node's provisioning state
to "rebuild".
Closes-bug: #1575935
Change-Id: I9a5529f9fa796c75621e9f4354886bf3032cc248
During a recent doc rework it was highighted that we should stop
linking to the ironic spec for the state machine and instead move that
information into the real documentation. This patch moves the
description about each state from that document into the states
documentation alongside the state machine.
Change-Id: If0cba97f7d7f6e3b7c4f4009ca61c7bcdec470e0
Recent update brought os-testr 1.0.0 that already uses stestr test
runner instead of testrepository.
This patch migrates those places using testrepository to using stestr.
Change-Id: I793617e042b38aea4cb177b51b6a7ba4a9268f3c
DevStack variables Q_PLUGIN_EXTRA_CONF_{PATH|FILES} were deprecated
during the Ocata cycle. Instead, plugins should leverage the
neutron_server_config_add function. The networking-generic-switch
DevStack plugin was updated to use this function in commit
a656b25d037ad250647ae1484e75d9d4633ba373.
Using the deprecated variables is causing installation failures of the
DevStack configuration for Ironic multitenant networking. This patch
stops using them, which solves the installation issues.
Change-Id: If78640a46c3b8b2bfb5627de183a1fea45b777cf
Closes-Bug: #1715879
This reformats the REST API Version History page so that:
* the ugly indents are gone
* each API version is in its own section and appears in the page
contents (bottom, left-hand-side)
* added semver numbers of the ironic release where the API version
was introduced
Change-Id: I37cdb7dcc4ebbc367ead277488ed805694a19450
Partial-Bug: #1712860
This updates the Releasing Ironic Projects documentation to
highlight (in red) anything code-related or file paths.
It also fixes a typo.
This is a follow-up to 7e4857851dc8945eff935da351b7a56c923aff52.
Change-Id: If17be2fa4c20c32740b1b32766abf54897d3370b
For the contributor documents, all the 'ironic' CLI commands are
replaced with their equivalent 'openstack baremetal' CLI commands.
Change-Id: I5b97e4bb8fc15a9544c1b8fa9b9603c4568020c7
Partial-Bug: #1711235
This adds a FAQ about how to update release notes; it makes a
difference as to whether the release note is on master, or whether
it is also on a stable branch. If it is on a stable branch, it is
only allowed in extenuating circumstances.
Change-Id: I49f3be17296795f90999171ab761f351a0a13c8c
This updates our releasing documention to reflect the releasing
process we went through for the Pike release.
Change-Id: I4e74f8bfe56e859d68ad7e9f81525a72db424ff5
This corrects the URLs in the contributor documentation as well as the
main index. The changes include:
- changing http to https
- changing absolute links to relative links (where applicable)
Change-Id: Iea392f8108ca4b5203682609dd78b980c1540b89
Fixes nits, updates documentation and releasenotes.
This is a follow-up to commit 3773f17403bb02b372673643780b9619151d22ea.
Change-Id: I4082bbb9f8c09eaf4569317eb1387bf9a36ef254
Partial-Bug: #1560704
This patch adds a guide for Devstack configuration to build a
environment to test boot-from-volume feature with VMs.
Change-Id: If1a2f1a712af61618ec6e96ce3bad67295ddcff3
Partial-Bug: #1559691
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>
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
In change Ib22753aa6ae0fedce7fb9ecf63f135fda0185c5b the port data model
was updated to include a physical_network field, but this was not
exposed to the user by the REST API. This change exposes the
physical_network field in the REST API.
The port CRUD notification object has been updated to include the
physical_network field.
The API reference and user guide have been updated to include
information about the ports' physical network field.
The API microversion has been bumped to 1.34. During a rolling upgrade
from Ocata when the API service is pinned, the port physical network
field is hidden from API responses, and API requests including the field
are rejected.
Change-Id: I7023a1d6618608c867c31396fa677d3016ca493e
Partial-Bug: #1666009
API Version 1.33 introduced fields related to storage interface to
Driver API as well as Node API. This patch adds missing description
for Driver API to REST API Version History documentation.
Change-Id: I2fd0709865adc1d02cf3800aa11497d97ab0b14b
Partial-Bug: #1559691
This patch does the following:
* Adds osprofiler wsgi middleware
This middleware is used for 2 things:
- It checks that person who wants to trace is trusted and knows
secret HMAC key.
- It starts tracing in case of proper trace headers
and adds first wsgi trace point, with info about HTTP request.
* Adds initialization of osprofiler at start of service
- Initialize and set an oslo.messaging based notifier instance
to osprofiler, which will be used to send notifications to Ceilometer.
* Traces HTTP/RPC/DB API calls and SQL requests
NOTE to test this patch:
1) Make the following changes in localrc to configure DevStack to enable
OSProfiler:
enable_plugin panko https://git.openstack.org/openstack/panko
enable_plugin ceilometer https://git.openstack.org/openstack/ceilometer
enable_plugin osprofiler https://git.openstack.org/openstack/osprofiler
# Enable the following services
CEILOMETER_NOTIFICATION_TOPICS=notifications,profiler
ENABLED_SERVICES+=,ceilometer-acompute,ceilometer-acentral
ENABLED_SERVICES+=,ceilometer-anotification,ceilometer-collector
ENABLED_SERVICES+=,ceilometer-alarm-evaluator,ceilometer-alarm-notifier
ENABLED_SERVICES+=,ceilometer-api
NOTE: the order of enabling plugins matters.
2) Run stack.sh. Once DevStack environment is setup, enable profiler options
in ironic.conf and restart ironic services:
[profiler]
enabled = true
hmac_keys = SECRET_KEY
trace_sqlalchemy = true
3) Use openstackclient and run baremetal command with
--os-profile SECRET_KEY
[--profile can be used, but it is deprecated.]
For example, the following will cause the <trace-id> to be printed
after node list:
$ openstack --os-profile SECRET_KEY baremetal node list
.....
.....
Trace ID: <trace-id>
Display trace with command:
osprofiler trace show --html <trace-id>
4) The trace results can be saved using this command:
$ osprofiler trace show --html <trace-id> --out trace.html
OSprofiler spec: https://review.openstack.org/#/c/103825/
Co-Authored-By: Tovin Seven <vinhnt@vn.fujitsu.com>
Co-Authored-By: Hieu LE <hieulq@vn.fujitsu.com>
Partial-Bug: #1560704
Change-Id: Icd3d7c62cf7442de8a77fc67f119ae9b03725f02
Neither `ironic-api` nor `ironic-conductor` tools accept
the `-v` option. Although the developer's quickstart guide
has it in the example what makes cut&paste failing.
This quick fix removes the offending option from the doc.
Change-Id: I31e3657f12f7a9cf64697b362cc168333752184c
This patch enables cinder storage interface for generic hardware. It
also adds storage_interface field to node resource and driver resource
in API and bumps API version to 1.33 so that storage interface can be
set and shown via API.
Change-Id: I2c74f386291e588a25612f73de08e8367795acff
Partial-Bug: #1559691