Commit Graph

48 Commits

Author SHA1 Message Date
Dmitriy Rabotyagov 218724412b Allow to extend default ironic_driver_types
This patch implements extra variable that allows to define extra types
for ironic without need to fully override the existing ones.

Depends-On: https://review.opendev.org/c/openstack/openstack-ansible-os_tempest/+/907180
Change-Id: Ic35dbeae949ba4425a0e352e51de64122b7c13d5
2024-01-30 08:47:29 +00:00
Dmitriy Rabotyagov fb50e99438 Stop generating ssh keypair for ironic user
There is no obvious need to have an SSH keypairs for ironic user
I was not able to find any proof in the project installation guide that
such keypairs were ever needed. Thus, such functionality is removed.

Depends-On: https://review.opendev.org/c/openstack/openstack-ansible-plugins/+/896017
Change-Id: I493d5f5aa0a915e7bc9fb7dbcd2673749c0b95d3
2023-10-14 08:50:18 +00:00
Jonathan Rosser 0a5de94bf3 Add a no_driver ironic driver type
Enabling this driver type ensures that the no-console, no-raid
and no-inspect interfaces are enabled so that they can be later
configured on a per-node basis if required.

These interfaces are useful to have enabled at the same time as
driver specific interfaces such as idrac or ilo in order so that
managment of specific functions can be disabled if required.

Change-Id: I2904ba005e3fa18faf8ccf04661e206501fa4aa3
2023-03-21 19:00:45 +00:00
Jonathan Rosser 11b162cfa3 Install socat and configure ipmtool-socat console interface
This patch adds the `console` field to the ironic_driver_types
variable and then enables a set of console drivers in the ironic
config through the `enabled_console_interfaces` option.

If `ipmitool-socat` is one of the enabled drivers, then the socat
distro package is installed to support that.

Defaults are added for socat bind address and port range to
use.

[1] https://opendev.org/openstack/ironic/src/branch/master/doc/source/admin/upgrade-to-hardware-types.rst

Change-Id: I36dd1a0ec69e5702143a1a26bd5901fc88706e84
2023-03-21 19:00:31 +00:00
OpenStack Release Bot 9dc138d3c1 Update master for stable/zed
Add file to the reno documentation build to show release notes for
stable/zed.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/zed.

Sem-Ver: feature
Change-Id: I5fac67444cd64fe79689d957e86cea871854d5ec
2022-12-13 13:15:30 +00:00
Jonathan Rosser b974a6c0e0 Refactor ironic deploy image handling.
The deploy image is required in two places in an ironic deployment,
first as images uploaded to glance for the ironic service, and second
as files on a web server for the ironic-inspector service.

Previously this role only placed the deploy images on the ironic
inspector web server, but this patch provides the functionality to
also upload the images to glance.

The variables for ironic deploy image source locations are
consolidated so that only one set are required to run the tasks
for both ironic and ironic-inspector, and several overrides are
available allowing the source to be overidden to a local mirror
easily.

Finally - the name of the files placed on the inspector web server
and into glance represent the upstream name of the image files rather
than generic names which lose versioning and release information.

Change-Id: I1aed9d97a4ddbfb70d2375f5204c55374d1067c9
2022-12-07 15:03:32 +01:00
James Denton 90d0204a43 Replace pxe_append_params with kernel_pxe_params in ironic.conf
Ironic has replaced deprecated pxe_append_params config option
with kernel_pxe_params. The ironic.conf template has been changed
accordingly, but support remains for config override
ironic_pxe_append_params.

Change-Id: Icedd2b8f0e81607caba93afd34557bd4c3a88b4d
2022-09-14 02:15:40 +00:00
James Denton 2a24dd59ba Add Support for Deploying UEFI Baremetal Nodes
This patchset adds support for deploying instances using UEFI baremetal
nodes. UEFI may replace Legacy BIOS mode in future Ironic releases. Tested
with Ubuntu Focal 20.04 LTS.

Change-Id: I0fa6234ec7321e1d69901175baeab4ddb08afc50
2021-12-12 14:24:30 +00:00
James Denton 8f3a9e207c Add iPXE support to Ironic Conductor
This patchset adds support for iPXE, which can speed up baremetal
provisioning considerably due to the use of HTTP versus TFTP.

Change-Id: I8b49ae37a0380cd7a2191f050a52c85cc373026b
2020-10-22 15:24:19 +00:00
Andreas Jaeger 4639624b02 Use newer openstackdocstheme and reno versions
The sync from https://review.opendev.org/733244 updated to
openstackdocstheme 2.2.1 and reno 3.1.0 versions.

Set openstackdocs_pdf_link to link to PDF file. Note that
the link to the published document only works on docs.openstack.org
where the PDF file is placed in the top-level html directory. The
site-preview places the PDF in a pdf directory.

openstackdocstheme renames some variables, so follow the renames
before the next release removes them. A couple of variables are also
not needed anymore, remove them.

See also
http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014971.html

Change-Id: I7c1df7b9349b4599ecfe6c1890ca0ca4ad353a81
2020-06-03 19:15:17 +02:00
OpenStack Release Bot 4242c4b7ae Update master for stable/ussuri
Add file to the reno documentation build to show release notes for
stable/ussuri.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/ussuri.

Change-Id: Id6f641c69856430a9ba9c45cc12baa5ef90c3b63
Sem-Ver: feature
2020-06-01 13:14:58 +00:00
Andreas Jaeger b89b742c61 Update docstheme for style
New version of openstackdocstheme (Victoria+) respects pygments_style.
Since this repo is using now Victoria (master) requirements but has
not branched for Ussuri yet, it uses the new version.

Change pygments_style to 'native' since old theme version always used
'native' and the theme now respects the setting and using 'sphinx' can
lead to some strange rendering.

Change-Id: Ifefea414df9220ae6df85e881424dfeafabe136f
2020-05-20 18:49:08 +02:00
Zuul 840f268bcc Merge "Adds configuration for the Ironic Inspector" 2019-12-06 19:24:02 +00:00
Zuul 3a0c31a3a0 Merge "Replace git.openstack.org with opendev.org" 2019-12-06 10:36:46 +00:00
Cam Loader 7da7127071 Adds configuration for the Ironic Inspector
This commit enables and configures the Ironic Inspector. This feature
allows for baremetal nodes to be introspected. This provides useful
information about an Ironic host. Such information includes harware
and mac addresses.

Depends-On: https://review.opendev.org/680553
Change-Id: I2ee09d9cc20f9b8e4430c55129cd8bac9435299d
2019-12-06 06:21:05 +00:00
Dmitriy Rabotyagov 2350d09d3f Replace git.openstack.org with opendev.org
This patch replaces git.openstack.org with opendev.org as redirection
from old path was enabled.
Also we change upper constraints url due to [1]

[1] http://lists.openstack.org/pipermail/openstack-discuss/2019-May/006478.html

Change-Id: I987630d0af1354b5c74c00c1ba0f76e2c80bed7e
2019-11-14 16:41:11 +02:00
ShangXiao 18e1b6c651 Fix typos in yml files
Change-Id: I9e0c48a6d6a6e6b128add994e4df075b334b8984
2019-11-07 11:13:38 +08:00
OpenStack Release Bot 122fa765b3 Update master for stable/train
Add file to the reno documentation build to show release notes for
stable/train.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/train.

Change-Id: Iec3b895bdf79b42f0ea59349c7cac3fa8542fa20
Sem-Ver: feature
2019-10-22 18:59:06 +00:00
OpenStack Release Bot 6f82c1c7ad Update master for stable/stein
Add file to the reno documentation build to show release notes for
stable/stein.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/stein.

Change-Id: Ia88cfe50a71c37bc7333e69b9c25b1b77fbb114c
Sem-Ver: feature
2019-04-08 09:18:58 +00:00
Francois Deppierraz a1fb95b2fa releasenotes: oslo-messaging-separate-backends add project name
Without this patch, the release notes published at
https://docs.openstack.org/releasenotes/openstack-ansible/rocky.html contains
the same line multiple times which is not very clear.

[...]
    Support separate oslo.messaging services for RPC and Notifications
    to enable operation of separate and different messaging backend servers.

    Support separate oslo.messaging services for RPC and Notifications
    to enable operation of separate and different messaging backend servers.
[...]

Change-Id: I0ed1a43670d97f2e2215d04c641f7bd4cfbe4f44
2018-10-15 16:55:06 +02:00
OpenStack Release Bot 33ec3657db Update reno for stable/rocky
Change-Id: I5cb2ffaa82004ba27486c24cb3afa79826032739
2018-08-10 16:47:04 +00:00
Jesse Pretorius cc4fa19f87 Execute service setup against a delegated host using Ansible built-in modules
In order to reduce the packages required to pip install on to the hosts,
we allow the service setup to be delegated to a specific host, defaulting
to the deploy host. We also switch as many tasks as possible to using the
built-in Ansible modules which make use of the shade library.

The 'virtualenv' package is now installed appropriately by the openstack_hosts
role, so there's no need to install it any more. The 'httplib2' package is a
legacy Ansible requirement for the get_url/get_uri module which is no longer
needed. The keystone client library is not required any more now that we're
using the upstream modules. As there are no required packages left, the task
to install them is also removed.

With the dependent patches, the openstack_openrc role is now executed once
on the designated host, so it is no longer required as a meta-dependency for
the role.

Depends-On: https://review.openstack.org/579233
Depends-On: https://review.openstack.org/579959
Depends-On: https://review.openstack.org/580156
Depends-On: https://review.openstack.org/580601
Change-Id: Ic346e642f52f064b002f5a2facead2fca5a7a03a
2018-07-06 13:47:22 +00:00
Andrew Smith f148283fdd Update to use oslo.messaging service for RPC and Notify
This introduces oslo.messaging variables that define the RPC and
Notify transports for the OpenStack services. These parameters
replace the rabbitmq values and are used to generate the messaging
transport_url for the service. The association of the messaging
backend server to the oslo.messaging services will then be
transparent to the ironic service.

This patch:
* Add oslo.messaging variables for RPC and Notify to defaults
* Update transport_url generation (added notifications)
* Add oslo.messaging to inventory
* Add release note

Depends-On: If4326a6848d2d32af284fdbb94798eb0b03734d5
Depends-On: I2b09145b60116c029fc85477399c24f94974b61d
Change-Id: I363a888980dfd84b4b586df01fb022dd453dc3de
2018-05-18 18:33:58 -04:00
OpenStack Release Bot e10087749e Update reno for stable/queens
Change-Id: I8718dba9110b7d9fd87ff953cc4b5ed68957ea44
2018-02-14 15:48:53 +00:00
Andreas Jaeger a530bc1225 Remove setting of version/release from releasenotes
Release notes are version independent, so remove version/release
values. We've found that projects now require the service package
to be installed in order to build release notes, and this is entirely
due to the current convention of pulling in the version information.

Release notes should not need installation in order to build, so this
unnecessary version setting needs to be removed.

This is needed for new release notes publishing, see
I56909152975f731a9d2c21b2825b972195e48ee8 and the discussion starting
at
http://lists.openstack.org/pipermail/openstack-dev/2017-November/124480.html
.

Change-Id: If8ba5b7cc6ad78cc8a6a8988439ed8d45136280a
2017-11-17 07:58:30 +01:00
Jesse Pretorius c69d80c4eb Initial OSA zuul v3 role jobs
This patch implements an initial set of jobs intended to match
the current job execution method. It does not intend to improve
how the jobs are executed - only to replicate what is currently
in openstack-infra/openstack-zuul-jobs and provide the platform
to iterate on.

Change-Id: I9763a35b0177693bce2904f0c9a0f70408c5d4de
2017-10-17 20:31:31 +00:00
OpenStack Release Bot 3ae3d936e7 Update reno for stable/pike
Change-Id: I9db118fb8e4115b42ca57b21400d0239b630831e
2017-08-23 05:56:48 +00:00
ZhongShengping e19f7343c8 Fix openstackdocstheme settings
To use openstackdocstheme 1.11.0 properly, this patch fixes
some settings according to follow[0].

[0]https://docs.openstack.org/openstackdocstheme/latest/

Change-Id: Ibe5c7ea2f4b545ecabfc94a4f0c3c83c9f98dc53
2017-07-03 16:16:48 +08:00
ZhongShengping c30153de96 Switch from oslosphinx to openstackdocstheme
As part of the docs migration work[0] for Pike we need to switch to use the
openstackdocstheme.

[0]https://review.openstack.org/#/c/472275/

Change-Id: Ib7bdf44bc85e8a0bbcfebaae4db9cba365fc63cb
2017-06-27 13:27:31 +00:00
Jesse Pretorius 34cc4bcd7b Rename release note to unique hash
Change-Id: Id88acc28dc1e7b0f1bd5811d7d0362bac958a63b
2017-04-28 11:38:58 +01:00
Jesse Pretorius 5ce9c107ad Reduce init restart/kill times
The systemd unit 'TimeoutSec' value which controls the time
between sending a SIGTERM signal and a SIGKILL signal when
stopping or restarting the service has been reduced from 300
seconds to 120 seconds. This provides 2 minutes for long-lived
sessions to drain while preventing new ones from starting
before a restart or a stop.

The 'RestartSec' value which controls the time between the
service stop and start when restarting has been reduced from
150 seconds to 2 seconds to make the restart happen faster.

These values can be adjusted by using the *_init_config_overrides
variables which use the config_template task to change template
defaults.

Change-Id: Id721b89bd37df91192f48743ea3c32a305022a9f
2017-04-26 13:06:51 +00:00
Andy McCrae 904be81e9a Rename reno to avoid conflict on integrated repo
Change-Id: Ifdb28ed5dc5709e62f96e16eda4ca453a85b7777
2017-04-11 12:07:43 +01:00
Jimmy McCrory 57e8a0eaaa Ensure the components are isolated from the system
This creates a specific slice which all OpenStack services will operate
from. By creating an independent slice these components will be governed
away from the system slice allowing us to better optimise resource
consumption.

See the following for more information on slices:

* https://www.freedesktop.org/software/systemd/man/systemd.slice.html

See for following for more information on resource controls:

* https://www.freedesktop.org/software/systemd/man/systemd.resource-control.html

Tools like ``systemd-cgtop`` and ``systemd-cgls`` will now give us
insight into specific processes, process groups, and resouce consumption
in ways that we've not had access to before. To enable some of this reporting
the accounting options have been added to the [Service] section of the unit
file.

Change-Id: Id82169f2f500045e0ff7dc348748400a4b116fe0
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-03-28 21:18:39 -05:00
Ravi Gummadi 6772dd503d Cap the number of worker processes
Users can configure the number of worker processes. However when
it's not specified the calculated number of workers can get too
large on hosts with a large number of CPUs.

Change-Id: Ieb1afbd5c872cc4a991b51287b57404b8932fafa
2017-03-02 12:10:44 -05:00
Cao Xuan Hoang a23c4379bf Use https instead of http for git.openstack.org
Trivialfix

Change-Id: Ieeaa60e79b9e3f77ca87ff53c90ad7b44670c4f0
2017-02-06 16:59:32 +07:00
OpenStack Release Bot 46e3c764de Update reno for stable/ocata
Change-Id: I76ddba429ec37e5d87ac8003308a747ed8c05ffc
2017-02-03 18:58:27 +00:00
Flávio Ramalho d3edce127d Adds support for the ironic-oneview drivers [+Docs].
This change adds support for the oneview drivers (agent, iscsi).

Note that changes on the ironic installation will occur only when
the oneview drivers are being used (agent_pxe_oneview or
iscsi_pxe_oneview are in the ironic_openstack_driver_list). This
means that this patch should not change anything on the the default
ironic installation (using agent_ipmitool driver).

Change-Id: I969df888c6a8b68e7a1a0643b46eee4b546ec13c
2017-01-27 15:44:24 -03:00
Andy McCrae 9f084a910c Add support for neutron network names for cleaning/provisioning
This patch adds the ability to specify a cleaning and provisioning
network for Ironic. If none are specified then Ironic continues to
function as it does now.

Ironic role will calculate the UUID of the neutron network assuming a
network name is provided.

Additionally, this is added to testing by configuring a network to add
with the network-name.

Change-Id: I9be6f351c0da292ac8b861d2168e73d1861e1603
2016-12-08 15:54:15 +00:00
Jesse Pretorius 47b5a171ca Simplify pip options/constraints mechanism
The current constraints generation for the
installation involves multiple tasks and multiple
variables.

Using multiple tasks extends the installation time
unnecessarily and the additional variables are
unnecessary.

This patch aims to simplify the mechanism and
hopes to speed it up a little.

Change-Id: Ie860ef9bc223621140205d465298c4009b86118a
2016-11-03 07:45:32 +00:00
Andreas Jaeger a7e96f6189 Enable release notes translation
Releasenote translation publishing is being prepared. 'locale_dirs'
needs to be defined in conf.py to generate translated version of the
release notes.

Note that this repository might not get translated release notes - or
no translations at all - but we add the entry here nevertheless to
prepare for it.

Change-Id: Ib9c0bf013bc56a770c63ca49e280abd7c255539d
2016-10-06 20:37:05 +02:00
Major Hayden e2684075c8 Update reno for stable/newton
Change-Id: I701c98c04fea0c653abcd33622466d8ce9b92b9c
2016-09-29 14:20:04 -05:00
Jesse Pretorius 581ce2053c Rename package lists (and related vars) appropriately
In order to make it easier to differentiate between the lists of
python packages, distribution packages, downloaded packages,
package pins and other similar variables the variable names are
being changed to ensure that they have a more explicit suffix
that defines the purpose and makes the naming more consistent.

This is to facilitate a lookup plugin which will be able to look
up all the package lists and present them as a consolidated piece
of data which may be used for artifact preparation.

Change-Id: I6f61216d318ea1adbcbf544066e9c71205fa5daf
2016-08-30 18:32:27 +01:00
Jesse Pretorius 2a28918663 Add ability to change apt/yum package state
The current method of installing the distribution packages required is
set in the tasks and cannot be changed by a deployer.

Currently the apt task always installs the latest package. This results
in unexpected binary changes when a deployer may simply be trying to
execute a configuration change.

This patch adds the ability for a deployer to change the desired state
so that the results are predictable.

Change-Id: I16a81da2b61cd69bafc59ac113fe546a748e8675
2016-08-02 14:37:27 +01:00
Jesse Pretorius ad97caea63 Update sphinx configuration
This patch updates the sphinx configuration for docs and releasenotes
to make it easier to replicate across repositories and to comply with
pep8 testing without exceptions.

Change-Id: I2b46927a22150d2a0d21fdec73eb404114cbdb7e
2016-07-12 16:53:12 +01:00
Jimmy McCrory e3004ccd15 Only install to virtual environment
Remove all tasks and variables related to toggling between installation
of ironic inside or outside of a Python virtual environment.
Installing within a venv is now the only supported deployment.

Additionally, a few changes have been made to make the creation of the
venv more resistant to interruptions during a run of the role.
* unarchiving a pre-built venv will now also occur when the venv
  directory is created, not only after being downloaded
* virtualenv-tools is run against both pre-built and non pre-built venvs
  to account for interruptions during or prior to unarchiving

Change-Id: I9df953f69eb86606ce8a6fe9f77e60c710549b8e
Implements: blueprint only-install-venvs
2016-07-08 05:49:42 -07:00
Andy McCrae 1e51088398 Add 16.04 support
Implements: blueprint support-ubuntu-1604
Change-Id: Ide4d2c5e7753aa56bd82f0de913217f0df8860b9
2016-06-02 14:39:39 +00:00
Jesse Pretorius fa0234cf79 Remove Liberty releasenote index
Change-Id: Ice3ae789d3b1a270b5aa98ad0ffa45fc4a1ed640
2016-04-20 22:18:47 +01:00
Jesse Pretorius f5f4621db2 Add reno scaffolding for release notes management
Change-Id: Idd59b182fcc81b79e5ccd6593351f773fbbd440a
2016-04-09 18:19:48 +00:00