MAAS UI: Tag Management [Final Design]

Here is the latest UI design for our Tag management work!
Thank you @Heitor @szeestraten @mdeluca @alanbach and @iaginde1 for you feedback and input. We are more than happy to hear more use cases from everyone as we go.


The biggest highlight for our tag management work is to expose the automatic tag functionalities in the UI. Read more about automatic tags. In the process of exposing this feature, we also want to make our tag management experience more foolproof as it is a very powerful concept.

What’s new in the Tag form? (Machine listing page)

Screen Shot 2022-01-27 at 4.53.41 PM

When you select multiple machines in our Machine listing page then select Tag from the Take action menu. The new form will look like the image below.

The first column of the form shows a search area where you can select existing tags or type in something new to create a new tag.
Screen Shot 2022-01-27 at 4.56.36 PM

The second column of the form handles tag changes. Where you can view all tags that are assigned to the selected machines (blue), new/existing tags to be assigned to selected machines (green), the tags that you planned to remove from selected machines (red), and automatic tags (gray), which MAAS handles it’s tagging operation for your so you cannot perform manual actions here.

If you click on any of these colourful tags, the right most column will show you its details.
Screen Shot 2022-01-27 at 5.03.14 PM
Confirm your changes by clicking save.

This will allow you to manage tags for multiple machines more conveniently.

How do I see all of my tags?

Apart from the tag form, we also introduce the new Tags tab, locating next to the Resource pool tab. This tab should show you all the tags in your MAAS. You can search, filter, view only specific tag types, create, update, and delete any of these tags.

If your tags are also applied to controllers or devices, the count will be displayed under the applied to column.

Creating an automatic tag

You can create an automatic tag in the Tags tab, by selecting the green button Create new tag.

This form will allow you to add a definition and kernel_options to a tag. This definition will try to match machines with information gathered from the hardware lister (LSHW) using the XPath expression and automatically tag those machines for you. One the automatic tag is created it will start with Applied to 0 machines. The number will increase while MAAS is running in the background, this can take sometime for all matched machines to show up. If you add new machines or update the automatic tags, MAAS will also automatically tag those machines in the background if they match with the definition.


Updating and Deleting tags

When updating and deleting tags with kernel options, one thing to be careful about is the kernel options. Kernel options are applied during boot time. So if a machine is tagged, the kernel options be applied when it is deployed. On the other hand, if you update a tag that is assigned to a deployed machine and that machine is deployed, that machine will have the previous kernel options. And only until that machine is redeployed will the updated kernel_options be deployed.

So when a tag is updated or deleted we will provide a warning when a deployed machine is tagged with kernel options.

Caveat: you cannot update a manual tag and turn it into an automatic tag or vice versa. It is recommended that you create a new tag entirely.


Something that we wish tags could do is become filterable down to the individual components tags on the main page. Currently on the main page there is a filter section to sort machines based upon the device level tags but nothing further. Our team places tags on individual network cards to understand which switches they are connected to but these tags are not filterable through the main page tag drop down box or in the main search box.

Thank you @ericstumbo,

That’s a very good suggestion. I have added that to our future work items. At the moment, if tags are shared amongst other nodes aside from machines, the Tag listing page will show that information under applied to.
When you click on it, it will filter the list of machines (as well as devices or controllers) but it might not list out all the network cards, because that will be under machines.
Screen Shot 2022-02-03 at 1.27.10 PM

Very good point and suggestion, thank you for sharing. :smiley: