Roadie’s Blog

Towards a more flexible software catalog

By Sam NixonAugust 21st, 2024
Product Kind

The latest features and updates from Roadie.

🚨 A new Product kind

A new kind has made its way into Roadie.

You can now leverage the Product kind in your catalog. It works in much the same way as other business-level kinds like domain and system, which seek to collate and create boundaries around other elements of your architecture.

It’s flexible Kind, designed to provide a neat wrapper or intemediary between existing concepts.

You might have:

  • Domain > Product > System
  • Product > Domain > System
  • Domain > System > Product

The relationships and structure of this are up to you. If you have any problems or run into unexpected inability to articulate the model you’re after then just let us know on Slack/Teams.

Enjoy. https://roadie.io/docs/getting-started/model-software/

Product Kind Demo

🧘‍♂️ More (and more-flexible) relationships between entities

We have extended the number of permissible relationships between entities to cover different arrangements of entities.

We’ve also introduced the managedBy and managerOf relationships to provide referential integrity between entities that managed things and the entities themselves. People manage people and people manage services (distinct from ownedBy which is often not accurate at describing responsibilities within a system).

If you want to surface those relationships on an entity page you now can, using the EntityRelationsCard. This allows you to filter the displayed relations and only show the ones that are relevant for your use-case.

More info here about what is now possible. https://roadie.io/docs/catalog/showing-dependencies/

If you require additional flexibility in relationships between entity kinds that is not supported, you can request this to be added via the Roadie Support.

managedBy Relationships

🏛️ Custom columns for your Catalog (in beta)

Ever wanted more control over the columns you have in the catalog? Well now you have it. We expose the setting of default columns and creating custom columns based on entity metadata, for each tab you create in the catalog.

We currently have this in beta, so let us know if you want some custom columns and we’ll create them for you.

🎨 Type-based entity layouts

In the past you used to be able to set different entity page layouts for the Component kind based on types, but for all other kinds (Resources, Domains etc) it was limited to one per kind.

This doesn’t really make much sense when you think about Resources for example, where an entity that is looking at a kubernetes cluster really needs different information from one looking at a AWS RDS instance.

So we changed it. Type-based layouts are now available for all kinds. https://roadie.io/docs/getting-started/configure-ui/

💈 New sidebar configuration options (in beta)

We’ve been adding new functionality to the Sidebar for a while in a piecemeal fashion, so we decided it needed a full revamp. You can now:

  • Add sidebar items that start with the root pages (i.e. /catalog) resolving a particularly annoying issue where you were blocked from doing so because one of those root pages already existed.
  • You can hide the Login to GitHub option entirely for all users.

More info here:

Sidebar Config Options

🔌 Plugins & Integrations roundup

  • Incident.io plugin: we now expose the Humanitec plugin, so you can view deployment information insider Roadie. Fun.
  • AWS account creation: last but by no not least, on the topic of catalog data sources this time rather than plugins - our AWS provider can now create AWS accounts and associated resources auto-magically. We also now ingest AWS tags as part of AWS automatic resource discovery. You can use tags to build relationships between newly ingested AWS resources and other entities in the catalog. Neat.

Become a Backstage expert

To get the latest news, deep dives into Backstage features, and a roundup of recent open-source action, sign up for Roadie's Backstage Weekly. See recent editions.

We will never sell or share your email address.