Hello Ironicers!

Here's a summary of the discussions around the major topics at the Ironic PTG 2024.2

# Caracal retrospective #
We took our time to look back at the Caracal development cycle, how it was for the ironic project, celebrate what we've accomplished, and of course also understand if some of the work started during Caracal needed to be continued in Dalmatian.
We're quite happy to say that most of the goals we've set for Caracal have been reached, and we've actually been able to do much more than planned!
For example we delivered the HttpBoot support for Redfish, we've been able to tackle a lot of old bugs and keep pace with the migration from storyboard to launchpad, almost finished the merge of Inspector into Ironic, and marked multiple old drivers for removal.

# Present and Future of Ironic #
We've analyzed the current status of Ironic and asked ourselves: "Where do we want Ironic to go?"
In the past years we started looking beyond Openstack and we've took some steps to get into that direction, and we can say that Ironic went over the Openstack borders, becoming more independent.
Currently Ironic can be used in three ways:
- Openstack Integrated, the more clear and established way
- as the core engine of Metal3, with good documentation for various use cases, but still growing and with margin for improvement
- standalone, which still requires some work, a much clearer path forward and requirements
We really want to keep investing in standalone Ironic more in the future, but to do that we need to take some decisions based on the vision we have on server provisioning from here to 5 years.
Lots of questions we asked ourselves on how to resolve some problems connected to having a standalone bare metal provisioning service, mostly related to networking (e.g. secureboot, virtualmedia), will expand and find possible answers in other topics.

# Redfish topics #
Talking about present and future, Redfish is the current constantly evolving and improving standard protocol to directly communicate with controllers of bare metal devices.
Ironic supports it since a while and of course there's more and more demand for new features to support or to expand the current capabilities.
The discussion was mainly around an alternative, and possibly easier way to provide images for firmware updates and virtual media boot using a "push" model instead of the current "pull", with two proposals:
- using the UpdateService already present in the Redfish standard
- using the Virtual Media Push as a new feature currently under discussion with DMTF
Another major topic is the support for TLS connection to the BMC, which already has a design proposal from one major contributor, Fujitsu.
In addition we'll also have to explore the "other side" of the connection, so from the BMC to the ironic services, which will be one of the goals for Dalmatian.

# CI related topics#
CI has always had great importance for the Ironic project being one of the major consumers in terms of resources.
It's not a case that that first related topic was how to slim down the CI usage!
During the Caracal cycle we've been able to reduce the number of jobs run by the Ironic project, but we've also added some more. We came to the conclusion that we need to take an approach where we stack more tests in fewer jobs, trying to consolidate down jobs as much as possible and minimize boot interface variation testing.
During the Dalmatian cycle we'll work first on trying to have Redfish and ipmi in a single ironic job, and update the list of jobs to understand where we can avoid duplication.
At some point we'll also have to make space for some more deep tests on ARM machines.
We've also decided to give Codespell tests a try, and explore the possibility of having some pre-commit hooks, and, after some technical considerations, move away from Tinycore as our base for the IPA ramdisk in CI, gentoo being the most likely candidate as a replacement.

# xPUs #
With xPUs in this case we mean IPU and DPU (not to be confused with TPU or GPU) which are some Processing Units that are designed for specific applications and data types. Usually DPUs are embedded in edge network cards, while IPUs are specifically designed for Artificial Intelligence/Machine Learning.
There are multiple challenges in order to support those devices, depending on the "vision" of the vendors, some view them having full Operating Systems, some as having an OS just as "firmware", most or all of them would like remote management, which is where Ironic can really make an impact.
Even though there are multiple use cases and scenarios where the use of xPUs is highly valued, and the wishlist of potential features is quite long, the first step we need to take is to get some real hardware and start testing, which is the real challenge we'll have to deal with next.

# Secure Boot #
We've made huge steps forward in supporting Secure Boot, the next big one would be supporting custom keys and providing means to upload and update them. Before doing that we need to clarify some aspects of Secure Boot, especially the "security vs convenience". In the Dalmatian cycle will focus mainly on updating our documentation, provide a better picture to users, and start exploring possible solutions for the secure custom keys management.

# Future of Networking #
Reconnecting to the future of Ironic, networking represents the next step for a truly standalone Ironic.
This means finding alternatives to Openstack-integrated scenarios and therefore to Neutron.
In Metal3 we're solving the problem using a separate IPAM, but this is still not enough for a complete Ironic standalone, in the end what we really need is flat network control, which at the moment we don't really have an alternative for.
We realized that the topic is vast, we've just scratched the surface and we need to invest much more time on it, having more discussions to go deeper into it and start researching alternatives and tools for our goal.

That is (almost) all folks!
You can find all the topics and more details in the discussions notes here:

Feel free to answer directly in this thread in case you have questions or comments, or contact the ironic team on IRC.

Thanks to everyone who participated in the PTG!
Have a great Dalmatian development cycle!