Custom disk profiles based on tag? Post install / Cloud-init based on tags?

Hi All,

TL;DR: Does MAAS have a way of tagging or grouping machines so they automatically get a specific disk layout/software raid config and specific apps the same way Stacki uses “Appliances”, “Boxes” and “Carts”?

Does anyone know if you can tie a specific disk layout to a tag? We are trying to move from Stacki, where I could create an “Appliance” which is tied to a specific disk config. That appliance could then be attached to a specific node or group of nodes, so they all receive that same disk layout.

Is there a way to do that with MAAS? I would assume there has to be a way of grouping like-hw so these things can be defined once and can be easily repeated. All I’ve seen has to do with creating a preseed file per node, but that is not workable when you are dealing with thousands of nodes. Forgive me if this has been spoken about , but I was unable to find that in any of the docs.

Second, just like Stacki’s concept of “carts”, which allow a certain script to run (embedded in XML), does Maas have a way to tag a node so it automatically runs a specific script? We might want a tag that configures the box to run a post-install script that triggers an ansible job to install Kafka or another that triggers a job to install some custom app.

I saw another post where someone responded with the clone api. The clone api copies an existing disk configuration from another box. I would think the disk configuration itself should be its own “object”. Something that can be applied to any machine at any time, hopefully tied to a tag. That tag could then be associated with a single node or group of nodes. Same with the application tags.