<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>openstack/ironic — Stackers Network</title>
    <link>https://stackers.network/projects/openstack-ironic/</link>
    <description>Weekly code-activity digest for openstack/ironic from Stackers Network.</description>
    <item>
      <title>openstack/ironic — Week of 2026-07-18</title>
      <link>https://stackers.network/projects/openstack-ironic/2026-07-18</link>
      <guid>https://stackers.network/projects/openstack-ironic/2026-07-18</guid>
      <pubDate>Sat, 18 Jul 2026 00:00:00 +0000</pubDate>
      <description>API surface. New JSON schemas landed for the conductors and volume APIs, formalizing request validation on two more endpoints and adding roughly 150 lines of schema definitions. Security and stability. TLS hardening was extended to kickstart configdrive fetches and inspection…</description>
      <content:encoded><![CDATA[<p><strong>API surface.</strong> New JSON schemas landed for the conductors and volume APIs, formalizing request validation on two more endpoints and adding roughly 150 lines of schema definitions.</p>
<p><strong>Security and stability.</strong> TLS hardening was extended to kickstart configdrive fetches and inspection rule connections, and a fix landed for <a href="https://review.opendev.org/c/openstack/ironic/+/997105">poisoning of the allowed origin list</a>. On the reliability side, a <code translate="no">destroy_node</code> race condition was closed (with backports across three stable branches), the Redfish firmware update path now handles the <code translate="no">NEW</code> task state correctly (also backported twice), and autodetection of the deploy interface no longer fails during node adoption. Glance image member lookups are now skipped for non-shared images, trimming needless calls.</p>
<p><strong>Neutron integration.</strong> Port operations against Neutron now use service auth, landing on master alongside four stable-branch backports — a small change with broad coverage across supported releases.</p>
<p><strong>Maintenance.</strong> Driver dependencies were reworked to be tracked as optional dependencies (with unused bandit dropped), <code translate="no">[ipmi]cipher_suite_versions</code> ordering was clarified in docs, a release note was added for the disallow-steps feature, and the CI image build now ensures <code translate="no">docker-buildx</code> is present on dpkg platforms.</p>]]></content:encoded>
    </item>
    <item>
      <title>openstack/ironic — Week of 2026-07-11</title>
      <link>https://stackers.network/projects/openstack-ironic/2026-07-11</link>
      <guid>https://stackers.network/projects/openstack-ironic/2026-07-11</guid>
      <pubDate>Sat, 11 Jul 2026 00:00:00 +0000</pubDate>
      <description>Security response. The week was dominated by coordinated fixes for two CVEs shipped across every supported branch. CVE-2026-44918 blocks rehoming resources to nodes with a different owner, landing as eight ~340-line backports plus a follow-up (996529) tightening the check…</description>
      <content:encoded><![CDATA[<p><strong>Security response.</strong> The week was dominated by coordinated fixes for two CVEs shipped across every supported branch. CVE-2026-44918 blocks rehoming resources to nodes with a different owner, landing as eight ~340-line backports plus a follow-up (<a href="https://review.opendev.org/c/openstack/ironic/+/996529">996529</a>) tightening the check further. CVE-2026-54423 blocks the <code translate="no">vendor.send_raw</code> passthrough, going out as seven parallel patches. Together these account for roughly 4,000 lines of the week's churn.</p>
<p><strong>Feature work.</strong> A new <code translate="no">ironic-manage</code> command lands to improve driver discoverability, wired into the CLI reference docs. The API gains JSON schemas for the <code translate="no">volume_target</code>/<code translate="no">volume_connector</code> and <code translate="no">portgroups</code> endpoints. Typing work continues across the driver stack: annotations on the base driver/interface for tasks and steps, type hints on hardware-type supported interfaces and step arginfo helpers, stub annotations on base interface methods, a new <code translate="no">ParsedKernelCommandLine</code> type, and a fresh <code translate="no">mypy</code> tox environment and CI job to enforce it.</p>
<p><strong>Bug fixes.</strong> <code translate="no">bootfile_name_by_arch</code> now considers boot mode (four-branch backport), BIOS firmware updates recover when the Redfish TaskMonitor disappears (three branches), and Glance image-member lookups are skipped for non-shared images (three branches). Node history events are truncated to avoid DB column overflow, pending-attribute checks are made conditional, and duplicate middleware reimports are removed.</p>
<p><strong>Elsewhere.</strong> The <code translate="no">oslo_policy[enforce_scope]</code> override is dropped and a small pep8 cleanup lands in <code translate="no">redfish/firmware.py</code>.</p>]]></content:encoded>
    </item>
    <item>
      <title>openstack/ironic — Week of 2026-07-04</title>
      <link>https://stackers.network/projects/openstack-ironic/2026-07-04</link>
      <guid>https://stackers.network/projects/openstack-ironic/2026-07-04</guid>
      <pubDate>Sat, 04 Jul 2026 00:00:00 +0000</pubDate>
      <description>Security posture. Ironic tightened its cryptographic and templating defaults, moving the minimum TLS version to 1.3 and switching Jinja2 rendering to a sandboxed environment, with a small follow-up cleaning up the TLS getattr path. See…</description>
      <content:encoded><![CDATA[<p><strong>Security posture.</strong> Ironic tightened its cryptographic and templating defaults, moving the minimum TLS version to 1.3 and switching Jinja2 rendering to a sandboxed environment, with a small follow-up cleaning up the TLS <code translate="no">getattr</code> path. See https://review.opendev.org/c/openstack/ironic/+/987953 for the TLS bump.</p>
<p><strong>API and data model.</strong> Node history gained a <code translate="no">project</code> field, and the owner/lessee trust model now has proper documentation covering how scoped access is meant to work in practice. A one-liner also corrected the release codename in the web API version history.</p>
<p><strong>Bug fixes.</strong> <code translate="no">bootfile_name_by_arch</code> now factors in boot mode when selecting the PXE file, Redfish virtual media insert no longer skips on stale BMC state, and broken project scoping was repaired. The <code translate="no">manual-management</code> hardware type was pinned back to <code translate="no">noop</code> to match its documented behavior — landed on master and backported to two stable branches. Autodetect ramdisk deploy via vmedia through Nova also got a one-line fix.</p>
<p><strong>Maintenance.</strong> The deprecated <code translate="no">remotable_classmethod</code> was replaced across the codebase, and the Metal3 functional CI jobs were modernized.</p>]]></content:encoded>
    </item>
    <item>
      <title>openstack/ironic — Week of 2026-06-13</title>
      <link>https://stackers.network/projects/openstack-ironic/2026-06-13</link>
      <guid>https://stackers.network/projects/openstack-ironic/2026-06-13</guid>
      <pubDate>Sat, 13 Jun 2026 00:00:00 +0000</pubDate>
      <description>Security hardening. The week was dominated by a coordinated security push. New JSON body depth and size limiting middleware landed for OSSN-0099 (~1,000 lines), and a directory-traversal fix in ISO9660 support went in alongside driver_info-level pxe_template override being…</description>
      <content:encoded><![CDATA[<p><strong>Security hardening.</strong> The week was dominated by a coordinated security push. New JSON body depth and size limiting middleware landed for OSSN-0099 (~1,000 lines), and a directory-traversal fix in ISO9660 support went in alongside <code translate="no">driver_info</code>-level <code translate="no">pxe_template</code> override being disabled. Jinja2 templating moved to sandbox rendering, file-URL validation was hoisted into the <code translate="no">deploy_utils</code> main path, and configuration-molds URLs are now validated against the Swift entry in the Keystone catalog. The fix for sensitive properties leaking on volume targets was backported across eight branches, and a bound on RFB failure-reason strings shipped to four. See <a href="https://review.opendev.org/c/openstack/ironic/+/991858">the body-limit middleware change</a> for the OSSN-0099 work.</p>
<p><strong>Operator controls and validation.</strong> Kernel append params are now validated as actual kernel parameters (a ~4,000-line change), with a follow-up fix for parsing quoted values and whitespace backported across seven stable branches. Operators also gained configurable step disallow lists, letting them block specific clean/deploy/service steps by policy.</p>
<p><strong>Driver and inspection fixes.</strong> Redfish work corrected the interop profile Storage requirements, retried vmedia insert on server errors, and learned to skip storage controllers that lack a Volumes link. BIOS settings now coerce string values before being sent to the BMC, and port pre-creation during inspection can be disabled.</p>
<p><strong>Elsewhere.</strong> TLS code was consolidated into <code translate="no">ironic/common/tls_utils</code>, the events API gained a schema, the firmware interface is highlighted in docs while management-for-updates is deprecated, and release mappings for 36.0 and 37.0 were added.</p>]]></content:encoded>
    </item>
    <item>
      <title>openstack/ironic — Week of 2026-06-06</title>
      <link>https://stackers.network/projects/openstack-ironic/2026-06-06</link>
      <guid>https://stackers.network/projects/openstack-ironic/2026-06-06</guid>
      <pubDate>Sat, 06 Jun 2026 00:00:00 +0000</pubDate>
      <description>Security hardening. The week is dominated by a coordinated security push backported across stable branches. New validation rejects malformed kernel_append_params so injected values can't smuggle extra kernel parameters, and ISO9660 handling gains a directory-traversal guard —…</description>
      <content:encoded><![CDATA[<p><strong>Security hardening.</strong> The week is dominated by a coordinated security push backported across stable branches. New validation rejects malformed <code translate="no">kernel_append_params</code> so injected values can't smuggle extra kernel parameters, and ISO9660 handling gains a directory-traversal guard — both landed on master plus six and five stable branches respectively. A companion change disables <code translate="no">driver_info</code>-level <code translate="no">pxe_template</code> overrides on seven branches, and file URL validation is hoisted into the main <code translate="no">deploy_utils</code> path. Capping the surface from the outside, <a href="https://review.opendev.org/c/openstack/ironic/+/991857">OSSN-0099 JSON body depth/size limiting middleware</a> shipped to master and three stable branches.</p>
<p><strong>TLS hardening.</strong> A second strand tightens transport security across the outbound clients: HTTP image service, Redfish BMC connections, the OCI registry client, and the Ansible <code translate="no">stream_url</code> module all gained TLS-hardening options. Together with the validation work above, this is roughly the bulk of the ~23k lines of churn.</p>
<p><strong>Driver and agent fixes.</strong> Redfish gets a bound on the failure reason string returned via RFB and a fix for the <code translate="no">any_left</code> flag accumulating across storage controllers, plus clearer vmedia insertion error messages. A new agent flag lets operators disable bootloader installation during deploy.</p>
<p><strong>Tooling.</strong> CI pinned <code translate="no">setuptools</code> to a still-shipping range and aligned voting jobs with the gate; the Zanata translation import also landed.</p>]]></content:encoded>
    </item>
    <item>
      <title>openstack/ironic — Week of 2026-05-30</title>
      <link>https://stackers.network/projects/openstack-ironic/2026-05-30</link>
      <guid>https://stackers.network/projects/openstack-ironic/2026-05-30</guid>
      <pubDate>Sat, 30 May 2026 00:00:00 +0000</pubDate>
      <description>TLS hardening. The dominant thread is a multi-patch rollout of TLS hardening options across Ironic's network-facing services. New configuration knobs land for the JSON-RPC service and for agent client connections, with initial documentation covering the new options. In the same…</description>
      <content:encoded><![CDATA[<p><strong>TLS hardening.</strong> The dominant thread is a multi-patch rollout of TLS hardening options across Ironic's network-facing services. New configuration knobs land for the <a href="https://review.opendev.org/c/openstack/ironic/+/985879">JSON-RPC service</a> and for agent client connections, with initial documentation covering the new options. In the same vein, the novncproxy parameters are renamed from <code translate="no">ssl_*</code> to <code translate="no">tls_*</code> for naming consistency across the codebase. Altogether this accounts for roughly 950 lines of the week's churn.</p>
<p><strong>Security fixes.</strong> File URL validation moves up into the main <code translate="no">deploy_utils</code> path (landed twice, on master and a backport) so the check runs earlier and unconditionally. The console wrapper also gets a small but pointed fix: the command passed to <code translate="no">socat</code> is now shell-quoted.</p>
<p><strong>Metal3 integration.</strong> A new functional job exercising the Metal3 <code translate="no">baremetal-operator</code> is added to the gate, with companion docs describing the related <code translate="no">ironic-standalone-operator</code> job.</p>
<p><strong>Driver and misc.</strong> The Redfish-side inspection path now skips storage controllers that lack a <code translate="no">Volumes</code> link rather than failing. Elsewhere, devstack learns to honor the global <code translate="no">ENABLE_DEBUG_LOG_LEVEL</code>, a docs cross-reference for <code translate="no">is_root_volume</code> is corrected, and a release-notes rendering issue that silently dropped notes is patched.</p>]]></content:encoded>
    </item>
  </channel>
</rss>
