<?xml version="1.0" encoding="utf-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Roadie Changelog</title><link>https://roadie.io/tags/changelog/</link><description>Latest Roadie product updates and changelog entries.</description><lastBuildDate>Mon, 16 Mar 2026 21:14:12 GMT</lastBuildDate><docs>https://validator.w3.org/feed/docs/rss2.html</docs><generator>https://github.com/jpmonette/feed</generator><language>en</language><copyright>All rights reserved 2026, Roadie</copyright><item><title><![CDATA[More MCP Servers, moving to the AI SDK, en mass changes in the UI, and OpenSearch for all]]></title><link>https://roadie.io/blog/more-mcp-servers-moving-to-the-ai-sdk-en-mass-changes-in-the-ui-and-open-search-for-all/</link><guid isPermaLink="false">https://roadie.io/blog/more-mcp-servers-moving-to-the-ai-sdk-en-mass-changes-in-the-ui-and-open-search-for-all/</guid><pubDate>Mon, 01 Sep 2025 11:00:00 GMT</pubDate><description><![CDATA[August is a time for summer holidays and beaches and getting vaguely sunburnt but in a nice way. Or, if you're Roadie folks: building AI tools for Backstage. This month we integrated some MCP server tools, pushed out API token permissions for everyone, made mass updates possible, and moved OpenSearch to GA.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h2>More Roadie MCP Server(s)</h2><p>Last month we <a href="https://roadie.io/blog/announcing-the-roadie-mcp/">launched a set of Model Context Protocol servers</a> to provide data to any LLM-powered MCP client that can accept authenticated external servers, like Cursor or VSCode with Copilot.</p><p>This month we've extended that offering to include a few more of the bells and whistles you get with Roadie: backend config and the ability to manipulate Catalog entities via the Decorator.</p><p>For those not au fait with the current boom in MCP server creation, MCP is a protocol <a href="https://www.anthropic.com/news/model-context-protocol" title="MCP Server Announcement">created by Anthropic last year</a> to help standardise the way data is sent to LLMs and how models can access tools. Via an MCP server (or servers) you can give LLM-powered application access to data and tools that the foundational LLMs could never have.</p><p>We've added two new ones:</p><ul><li>The <a href="https://roadie.io/docs/details/roadie-mcp/backend-config/" title="Roadie MCP Server - Backend Config">Backend Config Server</a> provides specialized MCP tools for managing and querying backend configuration in Roadie.</li><li>The <a href="https://roadie.io/docs/details/roadie-mcp/catalog-decorators/" title="Roadie MCP Server - Catalog Decorator">Catalog Decorators Server</a> provides MCP tools for managing catalog entity decorators/fragments in Roadie.</li></ul><p>Now you can, from the comfort of your IDE or MCP client, in addition to accessing the Catalog and the Scaffolder, you can:</p><ul><li>List out proxies, lists ones which are correctly configured, and returns the path for any given proxy</li><li>List the available secrets that can be used in proxy configurations</li><li>Query and then append additional information to Catalog entities via a fragment, like new specifications, metadata, etc</li></ul><p>All you need to get going is an API token from Roadie and away you go.</p><p>Full docs for all released MCP servers can be found here: <a href="https://roadie.io/docs/details/roadie-mcp/">https://roadie.io/docs/details/roadie-mcp/</a></p><h2>API tokens for all</h2><p>We've added a new role to <code>api-token-creator</code> which, when added to a user, allows them to (wait for it...) create API tokens.</p><p>This has previously been a permission attached by default to the Admin role, and for customers not paying for Role-based Access Control they wouldn't have been able to delegate that permission to non-Admins easily.</p><p>That API token opens up all the MCP server capabilities we've been working on, so it makes a lot of sense for us to make it as easy as possible to get a token.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/W7cH5Lp7ySoYZcbvRnVrF/f26f8425f9caf6c506c2ad8e6843fb29/Screenshot_2025-12-17_at_12.23.20.png" alt="api-token-creator"></p><h2>En Masse Changes in the UI</h2><p>To make it easier to add that role to all users (and general make mass changes for various Admin tasks) we've introduced en masse changes.</p><p>You can now make mass changes to:</p><ul><li>Add or remove roles to sets of users</li><li>Mass deletion or cleanup of Locations if they're no longer necessary</li></ul><p>Simple.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/2834FbNNN2c2ww2pmdzXpb/2aebbd3ea3eff23055eb466bf3d7e1ae/Screenshot_2025-12-17_at_11.32.32.png" alt="En Masse changes"></p><h2>Moving to the AI SDK from Mastra</h2><p>This is a quasi-behind-the-curtain update from us, but as we move forward with AI feature building we've made the choice to move from <a href="https://mastra.ai/" title="Mastra AI">Mastra</a>, a way to build agents in TS, to <a href="https://ai-sdk.dev/docs/introduction" title="Vercel AI SDK">Vercels AI SDK</a>, a more fully-fledged . Mastra wrapped AI SDK v4 and provided some added bells and whistles, but as this space moves so darn fast Vercel caught up (and actually out-paced Mastra) and we found ourselves looking longingly at the features we could unlock by adopting the AI SDK directly.</p><p>What this means for those beta testing new AI features from us is:</p><ul><li>Streaming of chats (and generally a 'hey this feels like ChatGPT or Cursor' feel)</li><li>History, UI elements and a much more dynamic chat</li><li>Chat as a pop-up or slideout (coming soon)</li></ul><h2>OpenSearch hits GA</h2><p>OpenSearch has hit GA for Roadie so now all customers can benefit from our new search backend.</p><p>We'll be making tweaks to result ranking and indexing over the next few weeks and months as we gather more feedback from users, so let us know if your results are not what you'd intuitively expect.</p><h2>Anything else?</h2><p>No.</p><p>Happy Summer everyone (or at least for those in the Northern hemisphere)! 😎⛱️</p>
]]></content:encoded></item><item><title><![CDATA[MCP Servers for Roadie, AI Search enters beta, vibe code your own UI inside Roadie, and the launch of the Scheduler page]]></title><link>https://roadie.io/blog/ai-cometh/</link><guid isPermaLink="false">https://roadie.io/blog/ai-cometh/</guid><pubDate>Mon, 04 Aug 2025 11:00:00 GMT</pubDate><description><![CDATA[AI cometh... In July we launched our MCP servers to help pull Roadie data into you LLM-powered IDEs and MCP Clients, took a step towards fully integrating RAG AI into Roadie Search, allowed customers to vibe code their own UIs and launched the Scheduler to improve transparency of the inner workings of Roadie. Oh, and updates to our Launch Darkly plugin. ]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h2>Roadie MCP Server(s) for your LLM-powered Applications</h2><p>We're <a href="https://roadie.io/blog/announcing-the-roadie-mcp/">launching a set of Model Context Protocol servers</a> that can provide data to any LLM-powered MCP client that can accept authenticated external servers, like Cursor or VSCode with Copilot.</p><p>For those not au fait with the current boom in MCP server creation, MCP is a protocol <a href="https://www.anthropic.com/news/model-context-protocol" title="MCP Server Announcement">created by Anthropic last year</a> to help standardise the way data is sent to LLMs and how models can access tools. Via an MCP server (or servers) you can give LLM-powered application access to data and tools that the foundational LLMs could never have.</p><p>It's a client-server architecture, so you can then connect those MCP servers to whatever MCP client you wish. MCP clients range from chat interfaces like the Claude App to full blown AI IDEs like Cursor.</p><p>Now you can, from the comfort of your IDE or MCP client, do all kinds of things:</p><ul><li>Access Catalog entity data, relationships, and documentation</li><li>Find, validate, and execute scaffolder templates</li><li>Discover and retrieve API documentation and specifications to build API clients</li><li>Access Tech Insights fact data (TI subscription needed, of course)</li></ul><p>All you need to get going is an API token from Roadie and away you go.</p><p>Full docs for all released MCP servers can be found here: <a href="https://roadie.io/docs/details/roadie-mcp/">https://roadie.io/docs/details/roadie-mcp/</a></p><h2>AI-enabled search [in beta]</h2><p>In 2024 we open-source the RAG AI plugin to make AI features in Backstage as widely available as possible.</p><p>Implementing those features in Roadie though has taken some time. We wanted to generally improve search before bringing AI into the mix. With OpenSearch powered search results now fully rolled out, we turned out attention to integrating the RAG AI plugin fully into our search.</p><p>You can:</p><ul><li>Ask natural language questions of your Tech Docs and Catalog, like <code>Summarise the  Streelight service API docs</code> or <code>How does the Streelight service interact with other services?</code></li><li>Focus on a specific Doc or Catalog entity to narrow results and ask detail questions only about that specific entity.</li></ul><p>General availability expected in September / October.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/kQjlaaYSbOQDEoRvZD9ql/07c44ebdb7270f0dbae4d461b8797108/Screenshot_2025-08-04_at_11.43.42.png" alt="AI Search"></p><h2>Vibe code your own UI inside Roadie with MDX [in beta]</h2><p>As part of a Support task, we accidentally allowed anyone to vibe code their own UI inside Roadie.</p><p>That might sound silly, but hear me out...</p><p>To cover a simple use-case of 'I just want to call and API and render some data back' we exposed an ApiViewerCard to call an API from the frontend (as long as you have a proxy configured for that call).</p><p>Then we added MDX configurability to that card and it morphed into the MdxPluginCard.</p><p><em>Then</em> we exposed some common Roadie components to make it easier to compose a card that looked and felt at home in the rest of the UI.</p><p>When you put it all together (as some early customers have now started to do) you get some fairly nice cards that do exactly what you need them to.</p><p>Not only that, given the widespread use of MDX, you can also get an LLM to vibe code them for you.</p><p>For simple use-cases where you don't want to build a full custom plugin, but you do want some ability to pull in data that is not currently supported by a card or plugin: this is your guy.</p><p>The next step in this direction? The MDX can be fully generated from prompts inside Roadie, so you don't even have to leave your instance.</p><p>Then fully generated entity page layouts...</p><p>The future is now...</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/3aPsKXfPM4vt3i65YwMdAC/a06cabf855705a7ad877da492cebf75a/Screenshot_2025-09-24_at_16.52.11.png" alt="Simple My Groups MDX card"></p><h2>Tasks now exposed via the Scheduler</h2><p>To take a small step back from <strong>AI-AI-AI-AI, ALL THE TIME, EVERYWHERE</strong>, we also introduced a new Scheduler page to the Admin interface. This allows you to see the active jobs and self-serve re-triggering them if necessary.</p><p>We're continuing to expose Admin controls like this as a necessary part of an AI work. As AI starts to take over Roadie, we want Platform teams to have more control and visibility, not less.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/1zAzKM926RRHtumXzexVx6/3a836b1400b9c0e5502b1f9a9c13a3d9/Screenshot_2025-07-10_at_13.44.28__1_.png" alt="Scheduler"></p><h2>Improved Launch Darkly plugin</h2><p>The Launch Darkly plugin we span up last year was looking a little lacklustre and so we've spruced it up.</p><p>For those that use Launch Darkly for feature flag management:</p><ul><li>There's now a card displaying environment statuses for each feature flag</li><li>Updated visual indicators for feature flag status (pills rather than text)</li><li>A general spruce of the card UI to make it easier to understand what's happening at a glance</li></ul><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/5A1R8o3SAbKD7ljusegTLn/7e576bef07ebb0b202443775fe5636ab/launchdarkly-plugin-card.webp" alt="launchdarkly-plugin-card"></p><p>More info can be found in the docs: <a href="https://roadie.io/docs/integrations/launchdarkly/">https://roadie.io/docs/integrations/launchdarkly/</a></p><h2>Anything else?</h2><p>No.</p><p>That was quite a lot for one month :)</p>
]]></content:encoded></item><item><title><![CDATA[Announcing the Roadie MCP Server(s)]]></title><link>https://roadie.io/blog/announcing-the-roadie-mcp/</link><guid isPermaLink="false">https://roadie.io/blog/announcing-the-roadie-mcp/</guid><pubDate>Thu, 31 Jul 2025 11:00:00 GMT</pubDate><description><![CDATA[We now expose functionality data and functionality from your Roadie instance to MCP clients which can remotely authenticate (i.e. IDEs like Cursor or VSCode with Copilot). All protected by the same API token system that guards the Roadie API and gated behind the same user permissions a user would normally have.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h2>Introducing the Roadie MCP Server</h2><p>Roadie has always served a wide range of users, but first and foremost we're a software catalog and automation portal for software engineers.</p><p>As such, Roadie (and Backstage, upon who's shoulders we stand) has always been a good dashboard, acting as a single pane of glass for all kinds of fragmented dev tools and scattered pieces of documentation.</p><p>But it's always been a tool that you had to step out of your development workflow in order to access.</p><p>The classic flow for most engineers using Roadie was to either have Roadie open as a broswer window as they worked, or to step out of the IDE to ask questions of the Catalog, get wider context on your work, or provision some new service using the Scaffolder.</p><p>That context switch has always been a problem we'd like to solve.</p><p>Luckily the answer is here: it's the Roadie Model Context Protocol (MCP) Server(s).</p><h2>What's an MCP Server?</h2><p><a href="https://docs.anthropic.com/en/docs/claude-code/mcp">MCP is a protocol</a> introduced by <a href="https://www.anthropic.com/news/model-context-protocol">Anthropic in November 2024</a>.</p><p>The protocol itself is based on a simple client-server architecture. MCP Clients - like the new wave of IDEs (Cursor, Windsurf, VSCode with Copilot, etc) - act as clients that can call MCP servers to get additional information.</p><p>MCP servers allow the LLMs at the heart of newer software development applications to receive additional, specific context about the query that a user is making which wouldn't be well represented in the foundational model. MCP servers are therefore great for enriching responses when a base LLM simply wouldn't be able to generate a good enough answer.</p><p>For example, if you ask ChatGPT or Claude to generate you a <a href="/backstage-spotify/#the-main-features-of-backstage-by-spotify">Backstage Scaffolder Template</a> it will do a good-ish job because it was trained on enough open-source templates to do that. The format will be largely correct, for example. But, it will also hallucinate actions because it thinks they might logically exist. It also won't know which scaffolder actions you have installed. This isn't great if you want to actually run that template or automate a development flow involving the scaffolder.</p><p>If you tried the same case again but this time with an MCP which returned useable scaffolder actions upon request, then the LLM has a much better chance of generating a functional Template.</p><h2>How can I use it?</h2><p>The Roadie MCP server works with any tools that can act as an MCP client, including Claude Desktop, VSCode Copilot, and Windsurf Editor.</p><p>If you have your own MCP client with the capability to interact with remote MCP servers with authentication headers then this should also work.</p><p>You'll need a Roadie API key. Admins have access by default. There's a role in Roadie which, when enabled, can give users the ability to create their own API key.</p><p>Docs on how to get started can be found here:
https://roadie.io/docs/details/roadie-mcp/</p><h2>What can the Roadie MCP servers do?</h2><p>With the four MCP servers we've currently exposed, you can:</p><ul><li>Access catalog entity data, relationships, and documentation</li><li>Discover and retrieve API documentation and specifications</li><li>Find, validate, and execute <a href="https://roadie.io/backstage-spotify/#the-main-features-of-backstage-by-spotify">Backstage scaffolder templates</a></li><li>Access operational metrics, security data, and compliance information from Tech Insights (if you're a Tech Insights customer)</li></ul><h3>Example: OpenAPI specs.</h3><p>By asking questions in your MCP client, you can integrate two systems, assuming the one you're integrating with exposes OpenAPI specs documented in Roadie.</p><p>You would say something like this to you LLM:</p><p><code>“I need to integrate with our User Management system”</code></p><p>The MCP client will then make a call to our MCP server. The steps will look something like this:</p><ul><li>Searches for user-related APIs using find-api-specs</li><li>Retrieves specifications for relevant APIs</li><li>Explains available endpoints, authentication, and schemas</li><li>Provides integration guidance and code examples</li></ul><p>You'll then get an implementation of an integration between your current code base and the User Management system, that takes into account how the User Management API actually works.</p><h3>Example: Creating a new project using the scaffolder</h3><p>You would say something like this to you LLM:</p><p><code>“Create a new React frontend application”</code></p><p>The MCP client will then make a call to our MCP server. The steps will look something like this:</p><ul><li>Searches for React templates using find-scaffolder-templates</li><li>Shows available templates and their requirements</li><li>Guides user through providing necessary parameters</li><li>Validates inputs using validate-template-values</li><li>Executes template using run-scaffolder-template</li><li>Monitors progress and reports results</li></ul><p>You'll then get an complete application based on the provided template.</p><h2>How does authentication &#x26; permissions work?</h2><p>Getting permissions right in the context of MCP Servers, and AI and agentic systems more broadly,  can be tricky.</p><p>To solve that for the Roadie MCP Server(s), we've architected the Roadie MCP to have access to the authentication and permissions that the same user would have in the web app. We do that by combining two things:</p><ul><li>Roadie RBAC plugin</li><li>Roadie API using user-scoped tokens</li></ul><p>A user generates an API token in the web app for use in their MCP Client of choice. That token inherits the permission that the user has. It's evaluated on each call to ensure the permissions stay in sync. Tokens expire after 1 year.</p><h2>When will it be generally available?</h2><p>Folks who have opted in to our early-access AI features will have access shortly. After that we'll begin a wider rollout. Existing customers will be sent a message in the communication tool of choice (Slack or Teams) to onboard them.</p>
]]></content:encoded></item><item><title><![CDATA[Unified Search and Roadie Local enter beta, extended GitHub & GHES support, OpenSearch for all, and new plugins arrive]]></title><link>https://roadie.io/blog/roadie-local-enters-beta-extended-github-and-ghes-support-new-search-for-all/</link><guid isPermaLink="false">https://roadie.io/blog/roadie-local-enters-beta-extended-github-and-ghes-support-new-search-for-all/</guid><pubDate>Mon, 30 Jun 2025 11:00:00 GMT</pubDate><description><![CDATA[We're introducing search improvements (both in the underlying search engines we use as well as the UI), preparing the way for AI feature rollouts this summer, supporting more SCM combinations and beta testing Roadie Local. Oh, and the Rootly and Terraform plugins to enhance your developer portal.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h2>OpenSearch for all</h2><p>The OpenSearch rollout began last month and has not reached general availability.</p><p>If you missed it last month that means:</p><ul><li>Casing is better handled: camelCase, kebab-case and snake_case are factored in, so the user doesn’t need to know which was used when they’re searching</li><li>Partial search terms and descriptions are better handled: for example, skipping some-word in camel-some-word-case and just typing camel case will be returned as a result.</li><li>Word fragments allow for partial word matches. We’re currently using 4-7 chars for the ngrams, so fragments of words should be well matched</li></ul><p>But that's not the only thing happening with search...</p><h2>Unified Search enters [beta]</h2><p>We've also tweaked the UI to create a new search UI that captures more information and provides a generally slicker interaction with search.</p><p>The new UI allows you to:</p><ul><li>Use keyboard shortcuts (Cmd-K from anywhere in the app to bring it up)</li><li>Navigate as well as search (try searching for “Catalog”) for example.</li><li>Do things a little faster than before (performance is improved)</li></ul><p>Unified search not only enables greater discoverability within Roadie, but is also our first step in enabling RAG AI-enhanced searching of the Catalog and Tech Docs. In fact, it'll be the entry point for a few different AI features we're dreaming up.</p><p>We're already seeing search volume and click-through to an entity that then doesn't result in a new search (i.e. "Yay, I found what I was looking for") go up as result.</p><p>More on that over the next couple of months as our AI journey continues...</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/6OJVV0cUIceAdHybGS9UU2/bea134385601142396d69b0fae251469/Screenshot_2025-07-31_at_18.02.37.png" alt="Unified Search"></p><h2>Supporting both GitHub.com &#x26; GitHub Enterprise Server</h2><p>As our customers grow, so do the number of different SCMs deployed in any given organisation.</p><p>For a while we've dealt with the GitHub Cloud &#x3C;> BitBucket combo.</p><p>Now we can handle the GitHub.com &#x3C;> GHES combo too. Aside from setting up both SCMs there's nothing additional you'll need to do - it's all handled by a new GitHub switcher.</p><p>Nice.</p><h2>Roadie Local [beta] begins</h2><p>Roadie Local, the locally runnable version of Roadie you can deploy on your infrastructure, has entered beta.</p><p>We weren't expecting a long beta but who knows when you get into the weird and wacky world of on-prem deployment. More to come here I'm sure...</p><h3>Rootly Plugin</h3><p>The <a href="https://github.com/rootlyhq/backstage-plugin">Rootly plugin</a> recently released v1.0.0 of their plugin, which we've dutifully upgraded. It comes with a lot of new fun stuff, including the ability to:</p><ul><li>View and search a list of entities</li><li>View and search a list of services</li><li>View and search a list of functionalities</li><li>View and search a list of teams</li><li>View and search a list of incidents</li></ul><p>Rootly &#x3C;> Roadie customers: enjoy. https://roadie.io/docs/integrations/rootly/</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/3cCnt0Yr0TzrQ2dHmr9iQ2/a37148a822bcd486481951560ce1af28/rootly-global-page.png" alt="rootly-global-page"></p><h3>Terraform Plugin</h3><p>We also introduced the <a href="https://github.com/globallogicuki/globallogic-backstage-plugins/tree/main/plugins/terraform">Terraform plugins</a> to help Terraform Cloud users manage their infrastructure.</p><p>Docs on it can be found here: https://roadie.io/docs/integrations/terraform/</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/3AuiZsq4pPuF0ovgvy3g7J/0b61062d38262fff21badf5d8d26c1ec/terraform-resources-tab-1.webp" alt="terraform-resources-tab-1"></p><h3>Upgrade to v1.39</h3><p>Last but not least, Roadie is now on <a href="/backstage-spotify/">Backstage</a> version 1.39.</p><p>Full change notes for that update can be found here: https://backstage.io/docs/releases/v1.39.0/</p>
]]></content:encoded></item><item><title><![CDATA[AI is coming, but first it's Kratix, Kubernetes and Crossplane]]></title><link>https://roadie.io/blog/ai-but-first-kratix-kubernetes-crossplane/</link><guid isPermaLink="false">https://roadie.io/blog/ai-but-first-kratix-kubernetes-crossplane/</guid><pubDate>Sat, 31 May 2025 11:00:00 GMT</pubDate><description><![CDATA[We're diving deep into AI over the next few weeks, but we've also shipped a bunch of incredibly powerful plugins to help increase the ease of ingestion of resources into the Catalog. First and foremost: Kratix and Kubernetes/Crossplane.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h2>AI is coming...</h2><p>We've been playing around with AI features in Roadie for around 18 months now, ever since we open-sourced the RAG AI plugin way back in 2024.</p><p>We've struggled to understand <em>how</em> though.</p><p>A breakthrough came this month as we got stuck into the developments that have taken place in late 2024 and early 2025, notably the improvements in foundational models and in the introduction of the Model Context Protocol (MCP) paradigm.</p><p>We'll be pulling at a few different threads over the next few weeks and months to see what's feasible in the short-term, so watch this space for things like:</p><ul><li>RAG-AI-powered search</li><li>MCP servers to return data and actions from your Roadie instance</li><li>Integration of common (but complex) actions into the UI, powered by AI</li></ul><h2>Plugins, plugins, plugins</h2><p>In the meantime, we've introduced two substantial plugin improvements into Roadie that radically improve ingestion of entities.</p><h3>Kratix</h3><p>The Kratix Platform has grown in popularity recently as more folks a) adopt the idea of an internal platform and b) want an open-source alternative to the proprietary platforms that exist out on the market.</p><p>That's something that we want to support and foster. We're big believers in open-source, as you'd imagine given we're built on top of an open-source product and regularly contribute to various oss projects.</p><p>Kratix plugins are now available in Roadie. You'll need to be a paid Kratix user to access them, as is the model for the folks behind Kratix (Syntasso, in case you were wondering) but we now suport:</p><ul><li>Kratix FE plugin</li><li>Kratix BE plugin</li><li>Kratix scaffolder actions</li></ul><p>Enjoy. https://roadie.io/docs/integrations/kratix/</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/7CqaBmAmIUewqmULSWcp25/fd8c437e9d25e94ecec899b374957ecc/kratix-promise-overview.webp" alt="kratix-promise-overview"></p><h3>Terasky K8s Ingestor and Crossplane plugins</h3><p>We also folded many of <a href="https://github.com/terasky-oss/backstage-plugins">Terasky's Kubernetes plugins</a> into Roadie.</p><p>Terasky have managed to thread the needle with improving the way Backstage interacts with Kubernetes and done so in order to ingest entities directly from K8s clusters.</p><p>They've also open-sourced Crossplane plugins to allow Backstage to:</p><ul><li>Ingest Kubernetes Components</li><li>Ingest XRDs</li><li>Ingest Claims</li></ul><p><a href="/docs/integrations/kubernetes-ingestor/">Check out our docs here</a>.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/64fK6ovlwEoFjaGycldTCd/8a295b58e84869301600eedf28790031/Screenshot_2025-07-31_at_13.59.09.png" alt="crossplane-1"></p>
]]></content:encoded></item><item><title><![CDATA[Improving Search, some mobile UX tweaks, and Tech Insights historical data ingestion]]></title><link>https://roadie.io/blog/improving-search-mobile-ux-tech-insights-historical-data/</link><guid isPermaLink="false">https://roadie.io/blog/improving-search-mobile-ux-tech-insights-historical-data/</guid><pubDate>Wed, 30 Apr 2025 11:00:00 GMT</pubDate><description><![CDATA[April was all about getting data in and out of the Catalog. We improved search by introducing a new search engine, tweaked the mobile UX of Roadie to make it more usable (at 4am when you need to grab some techdocs for an incident), and extended the limits on historical data ingestion for Tech Insights. Oh, and introduced the DX plugin to make syncing data between DX <> Roadie easier. A busy month.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h2>Introducing OpenSearch for better discoverability</h2><p>As the volume of data in the Catalog grows, we often see customers hit a discoverability problem: how do you find items when the Catatlog is tens of thousands of, often very similar seeming, entities?</p><p>Well: search. Duh.</p><p>But, how do you make sure search results are fast, accurate and scalable? <a href="/backstage-spotify/#the-main-features-of-backstage-by-spotify">Backstage</a> supports different search engines, but the better ones (Elastic-like ones like OpenSearch) tend to get expensive at scale, especially when you run almost isolated stacks for each customer as we do.</p><p>This month we dedicated a bit of time to figuring out how to do it at scale, and voilà! Better search has arrived!</p><p>We stripped out the old search engine and brought in <a href="https://github.com/opensearch-project/OpenSearch" title="OpenSearch">OpenSearch</a>, an Elastic-search-like search engine (an open-source one, of course).</p><p>That means you get a few improvements out of the box:</p><ul><li><strong>Casing is better handled</strong>: camelCase, kebab-case and snake_case are factored in, so the user doesn't need to know which was used when they're searching</li><li><strong>Partial search terms and descriptions are better handled</strong>: for example, skipping some-word in camel-some-word-case and just typing camel case will be returned as a result.</li><li><strong>Word fragments allow for partial word matches</strong>: We're currently using 4-7 chars for the ngrams, so fragments of words should be well matched</li></ul><p>We also have brought ourselves a lot more headroom here for optimisation - we'd reached the end of the line with the pg_search after many years of trying to force it to be the search engine that we'd have liked it to be. OpenSearch has a lot more we can tweak.</p><p>So what's next? We'll be rolling out OpenSearch progressively to customers, starting this month.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/2Hwot7Cu9KMpyMuWlPh0Jq/c3adca4bf4296b8a20ef700d8e2b3d50/Screenshot_2025-05-16_at_09.45.01.png" alt="opensearch"></p><h2>Mobile UX gets some love</h2><p>Being able to search for something in the Catalog is one thing, but if you can't readily view it or the experience is poor then that's not much use.</p><p>Roadie is largely optimised for web (big tables of software == a laptop or desktop-based experience is always going to be best) but there's a baseline for usability that should be met to make some key use-cases function.</p><p>This month we focused on the use of tech docs on mobile. If it's 4am, you've just been woken up by an incident, and you need to quickly read a runbook to see what to do next: probably best to not have to get your laptop out when you have your phone <em>right there</em>.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/6Pqgtst243DM9CBIaW7kYB/1b21f5294ab987925961064b3d548df9/image__42_.png" alt="mobile-ux"></p><h3>Tech Insights historical data ingestion gets 12x more data-ness</h3><p>Tech Insights push-based Data Sources allow for historical data ingestion for our customers when migrating from other systems to Roadie. That's been in place for a while, but this month we bumped the volume of data you can ingest.</p><p>Over the last few months we've seen more and more customers want to ingest <em>a lot</em> of data. Part of that is the growing maturity of scorecards as a concept within the wider industry, but also part of the wider shift towrads managed Backstage as the IDP of choice for many orgs.</p><p>Down to brass tacts though: the push-based data source can now ingest <strong>one year</strong> of data. Previously it was 1 month.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/3CHEucBSQ0uXxGicqtAzJu/c965b0955ed12f5fcc68d20fa45a07fc/Screenshot_2025-05-16_at_09.49.47.png" alt="push-based-historical"></p><h3>DX Plugin</h3><p>Last but not least, we've introduced the DX plugin to Roadie to help sync the Catalog between the two.</p><p>More details here for those that are interested: https://roadie.io/docs/integrations/dx/</p><p>This is something we're expecting to see a lot of in the coming months: dev tools that need a software Catalog simply sync to a Catalog like Roadie/Backstage rather than build it themselves. Tools like DataDog and Sentry are dipping their toes into the software Catalog world but it's a tricky business keeping up to date with all the different sources of truth and ingestion mechanisms: that's why open-source tools like Backstage will always have the edge.</p><p>More on this trend on the <a href="https://thenewstack.io/the-hidden-costs-of-multiple-service-catalogs-in-development/" title="Hidden Cost of Multiple Service Catalogs">New Stack</a> for those that are interested.</p>
]]></content:encoded></item><item><title><![CDATA[An all new (paginated) Catalog, the All Tab, and changes to the Admin area]]></title><link>https://roadie.io/blog/pagination-the-all-tab-and-changes-to-the-admin-area/</link><guid isPermaLink="false">https://roadie.io/blog/pagination-the-all-tab-and-changes-to-the-admin-area/</guid><pubDate>Mon, 31 Mar 2025 11:00:00 GMT</pubDate><description><![CDATA[Pagination and Catalog filtering labs, the All tab has arrived to make the Catalog even more composable, and the Admin area is getting a glam-up.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h2>Performance Improvements: Catalog Pagination &#x26; Service Workers</h2><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/2pcYH9beU2ON2DVv8JoQ6/1d9da37f8a1eb5fe5cdaaf2cadc1c705/Screenshot_2025-03-19_at_10.35.55.png" alt="Paginated Catalog"></p><p>We mentioned in the previous Changelog that we've been working on a buffet of different improvements to both performance and stability to enable us to handle large Catalogs.</p><p>Top of mind this month has been performance of the backend and response time when users make simple requests of the Catalog. That means: pagination time.</p><p>The first pass of pagination has proven we can dramatically reduce page load times without impacting the current UI or UX. For the first customers to receive a paginated Catalog we're already seeing a minimum of ~300ms decreases in load time for smaller Catalogs but at least 66% for XL Catalogs (i.e. 100s of thousands of entities).</p><p>This is comparing the P95 scores for page load that we see across all our customers. Red is the rollout where we migrated a few customers over but some customers remained on the older, unpaginated Catalog. Green is the period where the paginated Catalog was fully rolled out.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/1utLYqzWF67O6Z0rPFNoXv/db92c0f64d930a29ee28247eec66d4b0/pagination.png" alt="pagination"></p><p>We've also tweaked the filtering UI to handle more filters, while disabling some (Some of the in-table filtering and sorting options are not possible with a paginated catalog).</p><p>And last but not least we’ve also changed the UI a little around filtering to clean up how crowded it can become if you have a table with lots of potential filters in place.</p><p>We're also separately using service workers to pre-load some elements of the application to further speed up page load. More on that to come.</p><p>The rollout of the paginated Catalog has already begun, so more on this soon.</p><p>Fun stuff!</p><h2>All hail the All tab</h2><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/3GUcnW226MOmK5GmTgBJI8/5e8094881cb75eb310e77e89831c1248/Screenshot_2025-03-19_at_10.35.51.png" alt="All tab"></p><p>On a similar theme, the Catalog has also received a major update in the form of an All tab.</p><p>About a year ago we started the effort to make the Roadie Catalog as composable as possible.</p><p>The Backstage Catalog is extremely extensible and configurable, but sometimes the UI belies that flexibility and makes it feel a little restrictive.</p><p>We wanted to highlight the power and extensibility of Backstage in the Roadie-fied version, but also make it significantly easier to make changes to the Catalog.</p><p>That's why we have Catalog Tabs (for making easy filters of the Catalog) and the Decorator (to make changes to entities via the UI or the API, without having to use YAML).</p><p>One issue with this novel approach is it created a long-tail of issues with plugins upstream. OSS plugins sometimes assume things like a Domain filter can be applied over the Catalog and a filtered list of Domains will be presented to the user. We don't really have that concept by default (and we allow users to remove it) so we've hit a few bugs over the last few months.</p><p>The All tab solves that.</p><p>The All tab shows you your whole, unfiltered Catalog. You can apply filters over the top of it, as you like. Previous cards that linked through to filtered lists of Domains, Systems etc, will now land here.</p><p>We like it a lot - we hope you like it too.</p><p>Enjoy!</p><h3>Admin Area glam-up [in beta]</h3><p>The Admin area has also seem some significant changes this month.</p><p>The old Admin area had grown into a bit of a sprawl in recent times. 70+ plugins and integrations all mixed together, doesn't lend itself to a clean and easy to navigate UX.</p><p>We decided a revamp was in order. We focused on the discoverability of plugins - namely moving to a card-based layout and refreshing the search. We also took the opportunity to make changes to the information architecture of this area to chunk up the config options into different tabs.</p><p>Next up we'll be standardising each page to make adding secrets, seeing which cards and tabs that plugin exposes are being used, and understanding at a glance how it is configured. After that we'll be looking at how simple health checks and status indicators for each plugin can give greater feedback to users about the health of that connection.</p><p>Enjoy.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/4Vo2wB73BvaBREyxvsO49U/1f1311aaf069340c2914107da1d5e4f8/Screenshot_2025-03-19_at_10.34.36.png" alt="Admin Area"></p>
]]></content:encoded></item><item><title><![CDATA[Roadie Local is coming, State of Backstage launches, and Announcements lands]]></title><link>https://roadie.io/blog/more-performance-work-announcements-and-local-roadie-in-beta/</link><guid isPermaLink="false">https://roadie.io/blog/more-performance-work-announcements-and-local-roadie-in-beta/</guid><pubDate>Mon, 03 Feb 2025 11:00:00 GMT</pubDate><description><![CDATA[This month we're announcing our newest venture: on-prem Roadie, as well as a new community initiative, and the addition of announcements capability to the product.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h2>💈 Roadie Local [coming soon]</h2><p>We're going on-prem.</p><p>We've been toying with this idea for a long-time and we've decided to go all-in on enabling Roadie to be run on customer infrastructure.</p><p>We call it Roadie Local.</p><p>More soon - we're aiming for a beta launch in March, moving to general availability in Q2 2025.</p><h2>💈 State of Backstage launches</h2><p>We're also launching a survey.</p><p>When a community reaches a certain level of maturity getting a good lay of the land each year becomes a good idea. Backstage has hit that point - maybe we're even a little late to realise it - so we thought it was time to launch an annual State of Backstage survey.</p><p>This is a non-commercial activity for us. It’s solely to foster a greater sense of community and information sharing.</p><p>We’ll publish the report from this survey in Spring 2025 for free (of course).</p><p>Check it out on the state of backstage.io site.</p><h3>🔌 Plugins &#x26; Integrations roundup</h3><ul><li><strong><a href="https://roadie.io/docs/integrations/announcements/">Announcements plugin</a></strong>: we pulled in the Announcements plugin to give customers the ability to post updates and requests to their userbase within Roadie. It's a plugin that's been around for some time, but it's developed markedly in the last year or so so we thought it was time. Enjoy!</li></ul>
]]></content:encoded></item><item><title><![CDATA[Performance, pagination, Unified Search,new Tech Insights visualisations, GHES support and Wiz certification]]></title><link>https://roadie.io/blog/performance-pagination-new-tech-insights-visualisations-ghes-support-wiz-certification/</link><guid isPermaLink="false">https://roadie.io/blog/performance-pagination-new-tech-insights-visualisations-ghes-support-wiz-certification/</guid><pubDate>Wed, 01 Jan 2025 11:00:00 GMT</pubDate><description><![CDATA[This is another bumper changelog that covers November and December: buckle up. The new year is upon us and we're covering all things performance related, as well as enhancements to our support for GitHub Enterprise Server and the security service Wiz. Oh, and a new way to visualise Tech Insights Fact Data to make it more seamlessly integrated into the Catalog.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h2>💈 Performance, Stability &#x26; Pagination</h2><p>We've been working on a bunch of different improvements to both performance and stability.</p><p>First among them is pagination of the Catalog, without losing filtering.</p><p>We'll be tweaking the filtering UI in the next few weeks and months but the first pass of pagination has proven we can dramatically reduce page load times without impacting the current UI or UX. We're already seeing ~300ms decreases in load time and increased stability for giant Catalogs (i.e. 100s of thousands of entities).</p><p>We're separately using service workers to pre-load some elements of the application to further speed up page load. More on that to come.</p><p>Last but not least, we've also been chunking up Backstage into separate pods to help us scale the application as usage grows. More on that to come in blog posts, but if you're running a giant instance or have reached scale with Tech Insights, splitting individual parts of the application out into separate pods is generally a good idea.</p><p>Fun stuff!</p><h2>Tech Insights Facts: Aggregated</h2><p>Sometimes you want to just see a Fact in Tech Insights. You don't want to look at whether it passed or failed a check or whether it is meeting a Scorecard requirement: sometimes you just want the data.</p><p>An entity-by-entity view is one thing (which we implemented with Fact Tables) but often you'll want to see a team-by-team view of fact data.</p><p>For checks and scorecards we have roll-ups, and now for Facts we have Fact Cards.</p><p>Say you're tracking DORA metrics or want to see mean time to resolution for incidents. Now you can :)</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/426KnqJ5xwfge9yCNXohrV/c494fdcf4b9e34144c952b27b35cb77d/facts.png" alt="facts"></p><h2>GitHub Enterprise Server (GHES) support</h2><p>We now support both GHES using the Roadie Agent and GHES combined with github.com (if that floats your boat).</p><p>Previous iterations of our GHES support have relied on a connection to the GHES instance over the public internet. This is ok for some organizations but not all, and usually if you're using GHES you're pretty pro-security and pro-don't-send-things-over-the-public-internet.</p><p>In the past for these use-cases we used the Roadie Agent, which is based on the open-source Snyk Broker, to create a long-lived websockets connection that is fully controlled by the customer. That hasn't, up until this point, worked with GHES though.</p><p>Now it does! :)</p><p>For good measure we threw in the ability to configure both GHES and github.com simulatenously to allow folks who are migrating from one to the other to support both SCMs on their Roadie instnace.</p><p>Enjoy!</p><h2>🧘‍♂️ Scaffolder Actions table</h2><p>We have also just launched some good ol' fashioned documentation.</p><p>The Scaffolder is an extremely powerful tool, but it doesn't have the same level of documentation or cataloging that plugins receive. It can be tricky to find out which open-source actions exist and how to use them.</p><p>To solve that, we created the Scaffolder Actions Directory. We searched the internet high and low to find all the actions we could. Most of them we support, some are hot of the press and not yet included in Roadie. We'll keep updating it as the Actions ecosystem evolves.</p><p>Check it out: https://roadie.io/docs/scaffolder/scaffolder-actions-directory/</p><h3>🔌 Plugins &#x26; Integrations roundup</h3><ul><li><strong><a href="https://roadie.io/docs/integrations/wiz/">Wiz plugin</a></strong>: Our Wiz plugin is now certified! The new Wiz security frontend plugin surfaces Wiz data inside Backstage. We've worked with Wiz to give it ol' seal of approval. It's available both inside Roadie and as an OSS plugin. 👩‍🚀🚀</li></ul>
]]></content:encoded></item><item><title><![CDATA[RBAC, the new Backend, Scaling, Notifications and new Catalog customisation options]]></title><link>https://roadie.io/blog/rbac-new-backend-scaling-notifications-catalog-customisation/</link><guid isPermaLink="false">https://roadie.io/blog/rbac-new-backend-scaling-notifications-catalog-customisation/</guid><pubDate>Thu, 31 Oct 2024 11:00:00 GMT</pubDate><description><![CDATA[This is a bumper changelog that covers September and October, so buckle up. The clocks have rolled back, Halloween is upon us, and it's time to wrap up what we've been working on for the last two months. We're got RBAC, the new Backend, Notifications, scaling improvements, custom columns and tables, and a whole raft of plugins.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h2>🚨👮 RBAC with Fine-Grained Control</h2><p>Earlier this year we launched our Role-based Access Control (RBAC) feature to help our customers have greater control over who does what within Roadie.</p><p>That started off at a fairly coarse-grain, with the ability to restrict basic CRUD actions within the application to a subset of users.</p><p>The ultimate goal was always to have much tighter and more specific controls than that though, so we built a new layer for our RBAC controls.</p><p>Now, with our RBAC plugin you can:</p><ul><li>Create and surface custom permissions for your Custom Plugins</li><li>Create custom permissions policies to group those permissions together, either using our built-in permissions or Custom Plugin permissions you've created</li><li>Attach ALLOW or DENY options to those permissions policies so that you can more flexibily articulate the policy you'd like to create</li><li>Target annotations and other entity metadata to attach permissions</li></ul><p>That means you'll be able to:</p><ul><li>Target specific catalog items</li><li>Block scaffolder templates that you only want certain users to be able to see or run</li></ul><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/7d1Dygnglf6M6WgAtmw6gx/724e688867a88827f65f054555462c7d/Screenshot_2024-11-04_at_15.16.33.png" alt="Policies Management"></p><h2>🏛️ New Backstage Backend (and we're now on v1.30)</h2><p>We've made the jump to the new Backend now that it's officially stable. It wasn't a trivial thing though, and there are a few potholes that we hit along the way. To help others making the transition we even <a href="https://roadie.io/blog/migrating-to-backstages-new-backend-a-step-by-step-guide/">wrote a blog</a> about it.</p><p>We also took the opportunity to upgrade to v1.30 of the core project, so that's fun.</p><h2>🎨 Notifications have come to Roadie</h2><p>A set of <a href="https://drodil.medium.com/backstage-notifications-ceedf812ceef">Notifications plugins</a> landed with Backstage v1.28 and they've recently been integrated into Roadie. There's still some way to go for Notifications to mature in the OSS project (for example, individual plugins are responsible for emitting notifications and there currently isn't a way to really manage those - they're all just transparently sent to users 😅) but it's moving fast. There should be some notification management in the next release for example.</p><p>We'll be working in the next few months on integrating Notifications into various plugins that we manage, including Tech Insights. Exciting stuff!</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/38SDXmh1zIuJJpA2CI0qB7/6fb74bc541a37bf890104d5bfae6d6d6/notifications.webp" alt="Notifications"></p><h2>💈 Scaling, scaling, scaling</h2><p>Roadie customers have pushed the limits of Backstage lately.</p><p>Multiple Roadie customers now have:</p><ul><li>Catalogs with 200k+ Component and Resource entities</li><li>Catlaogs with 10k+ users and groups entities</li><li>Tech Insights facts with millions of data points captured</li></ul><p>That presented some major scaling challenges for our infrastructure and the way we have architected our version of Backstage.</p><p>After a lot of work to identify bottlenecks, scale cloud resources where required, and signficant engineering time introducing performance improvements, we're now able to comfortably handle even the largest Backstage installations in the world.</p><h2>🧘‍♂️ Custom Columns v2 &#x26; Fact Tables(in beta)</h2><p>Software Catalogs tend to be tables. They're the most intuitive mechanism for displaying large quantities of information.</p><p>Making those tables super-flexible is top-of-mind for Roadie at the moment. So much so that we have not one but two features in beta-testing to help introduce much more flexibility into our tables.</p><p>The first is Custom Columns v2. The first cut of Custom Columns allows you to take arbitrary metadata from each Catalog entity and add it to your Catalog tab as a new column. The values were rendered as strings though, so we're adding a whole bunch more types to allow easier comprehension of the information. Think: numbers, colourful ranges, links and Catalog entities, all accessible and filterable from within a Custom Catalog Tab.</p><p>The second is Fact Tables, which allow you to display Fact data that you've ingested for your entities from Tech Insights Data Sources (either built-in ones that we provide or custom ones you've created). You can filter it by team and display multiple Data Sources side-by-side.</p><p>Soon the two worlds will collide 🌚 🌝, with facts accessible inside Custom Columns. That means you'll be able to have a Catalog tab with data from any configured source alongside existing Catalog data.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/2UJy2DSUb9xAkZEMa1Tes2/1183c92f9fc38ecac22b91c96467ca7d/Screenshot_2024-11-04_at_15.25.07.png" alt="Fact Tables"></p><h3>🔌 Plugins &#x26; Integrations roundup</h3><ul><li><strong><a href="https://roadie.io/docs/integrations/wiz/">Wiz plugin</a></strong>: we made a new plugin! The new Wiz security frontend plugin now surfaces Wiz data inside Backstage. It's available both inside Roadie and as an OSS plugin. Wiz certification for this plugin is ongoing but should happen soon. We'll be working on a Wiz Tech Insights data source after that. Watch this space 👩‍🚀🚀</li><li><strong><a href="https://roadie.io/backstage/plugins/launchdarkly/">LaunchDarkly plugin</a></strong>: we also made a LaunchDarkly plugin for managing feature flags and surfacing configuration inside your Backstage instance.</li><li><a href="https://roadie.io/backstage/plugins/shortcut/" title="Shortcut Plugin | Roadie"><strong>Shortcut plugin</strong></a>: we made a Shortcut plugin. It's not quite as widespread as Jira (that's a pretty high bar...) but Shortcut is gaining some traction as a nicer way to engage with software development tickets and workflows. We use Shortcut internaly and we're big fans. Check it out.</li><li><strong><a href="https://github.com/RoadieHQ/roadie-backstage-plugins/issues/1537">Okta</a> &#x26; <a href="https://roadie.io/backstage/plugins/jira/">Jira</a> plugins</strong>: we've refreshed our Okta and Jira plugins to make them more seamlessly work with the new Backstage backend. Enjoy.</li><li><strong><a href="https://roadie.io/docs/integrations/aws-resources/">AWS account creation</a></strong>: last but by no not least, on the topic of catalog data sources this time rather than plugins - our AWS provider has been modified to ingest EKS clusters and containers auto-magically. This is the first step in allowing a one-hit configuration of both AWS and the Kubernetes plugin (we're currently modifying the K8s plugin to ingest these resources and take the config from AWS).</li></ul>
]]></content:encoded></item><item><title><![CDATA[Towards a more flexible software catalog]]></title><link>https://roadie.io/blog/towards-a-more-flexible-catalog/</link><guid isPermaLink="false">https://roadie.io/blog/towards-a-more-flexible-catalog/</guid><pubDate>Wed, 21 Aug 2024 11:00:00 GMT</pubDate><description><![CDATA[Summer is a productive time at Roadie. We've been working a lot to build more flexibility into the Backstage data model and UI. This month we're rolling out custom catalog columns and wider relationship support between elements of the software catalog. We've also revamped how we pull data in, starting with the AWS provider.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h2>🚨 A new Product kind</h2><p>A new kind has made its way into Roadie.</p><p>You can now leverage the <code>Product</code> 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.</p><p>It's flexible Kind, designed to provide a neat wrapper or intemediary between existing concepts.</p><p>You might have:</p><ul><li>Domain > Product > System</li><li>Product > Domain > System</li><li>Domain > System > Product</li></ul><p>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.</p><p>Enjoy. https://roadie.io/docs/getting-started/model-software/</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/4AqUfkUmoEpBvPLP30Lvmh/843abd0ffca6e9403236857122097a0e/Screenshot_2024-09-02_at_14.13.22.png" alt="Product Kind Demo"></p><h2>🧘‍♂️ More (and more-flexible) relationships between entities</h2><p>We have extended the number of permissible relationships between entities to cover different arrangements of entities.</p><p>We've also introduced the <code>managedBy</code> and <code>managerOf</code> 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).</p><p>If you want to surface those relationships on an entity page you now can, using the <code>EntityRelationsCard</code>. This allows you to filter the displayed relations and only show the ones that are relevant for your use-case.</p><p>More info here about what is now possible. https://roadie.io/docs/catalog/showing-dependencies/</p><p>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.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/5EF6PbzATWULFoIHvFqYYF/63a2099a82ce4e94bd07acc492397edb/Screenshot_2024-08-21_at_16.28.21.png" alt="managedBy Relationships"></p><h2>🏛️ Custom columns for your Catalog (in beta)</h2><p>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.</p><p>We currently have this in beta, so let us know if you want some custom columns and we'll create them for you.</p><h2>🎨 Type-based entity layouts</h2><p>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.</p><p>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.</p><p>So we changed it. Type-based layouts are now available for all kinds. https://roadie.io/docs/getting-started/configure-ui/</p><h2>💈 New sidebar configuration options  (in beta)</h2><p>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:</p><ul><li>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.</li><li>You can hide the Login to GitHub option entirely for all users.</li></ul><p>More info here:</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/jdrLb4UvGLjHLXb0NGrcH/27788d174ecd6d5806894200dcdcffd7/Screenshot_2024-08-20_at_14.14.20.png" alt="Sidebar Config Options"></p><h3>🔌 Plugins &#x26; Integrations roundup</h3><ul><li><strong>Incident.io plugin</strong>: we now expose the <a href="/docs/integrations/humanitec/" title="Humanitec Plugin">Humanitec plugin</a>, so you can view deployment information insider Roadie. Fun.</li><li><strong>AWS account creation</strong>: last but by no not least, on the topic of catalog data sources this time rather than plugins - our AWS provider can now <a href="/docs/integrations/aws-resources/" title="AWS Auto-ingestion">create AWS accounts and associated resources</a> 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.</li></ul>
]]></content:encoded></item><item><title><![CDATA[Role-based access control in Roadie]]></title><link>https://roadie.io/blog/role-based-access-in-roadie/</link><guid isPermaLink="false">https://roadie.io/blog/role-based-access-in-roadie/</guid><pubDate>Mon, 24 Jun 2024 11:00:00 GMT</pubDate><description><![CDATA[Role-based access control and user management is now available in Roadie, with role management, user management and fine-grain control over the catalog, scaffolder and Tech Insights 🎉 as well as the upgrade to 1.26 and new plugins and integrations.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h2>🚨 Controlling your Catalog with Role-based Access Control (RBAC)</h2><p>We've been working on this for a while and it is with some fanfare that we announce <a href="https://roadie.io/product/access-control/" title="Role-based access control on Roadie">Role-based Access Control (RBAC) on Roadie</a>. 🤝✨🙌</p><p>Transparency of information is at the heart of Roadie (and one of the key philosophical principles of Backstage), but there are often valid reasons for gating access to information and maintaining the principle of least privilege.</p><p>For example, let's say you want to onboard Customer Service agents to your catalog so they can quickly find information about a service that may be experiencing some issues. You don't necessarily want to give Customer Service folks the ability to execute a scaffolder run or browse through Tech Insights Scorecards: that's just unnecessary and may even be confusing.</p><p>What you need in that situation is fine-grained control over your Roadie instance.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/354X9A68s0EEGMCkR0rVEy/732eadd64d7773983fb27b7905a93337/Screenshot_2024-06-21_at_11.17.05.png" alt="Role Management"></p><h3>What is RBAC in Roadie?</h3><ul><li>A new framework for access control in Roadie</li><li>Every customer will have access to this new framework</li><li>Some features are part of a paid add-on</li></ul><h3>And how does it work?</h3><ul><li>Every part of Roadie is behind a Permission</li><li>Roles are made up of sets of Permissions</li><li>Users have Roles</li><li>Admins can manage roles</li><li>Admins can manage users</li></ul><h3>🎭 Role management</h3><p>Several roles are available out of the box. They cover our existing access management setup as well as well as introduce some convenient shortcuts for  new user groups that we've seen emerge recently:</p><ul><li>Admin</li><li>Tech Insights Admin</li><li>Maintainer</li><li>Viewer</li></ul><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/QpWi5K7W067wULqi9K9ar/ebdd594e554cfae7b8ea148800ad2bd5/Screenshot_2024-06-21_at_11.16.43.png" alt="User Management and IdP"></p><h3>📚 Roles from a variety of sources, like your identity provider</h3><p>The new permissions system will be allow you to send us roles from your identity provider as well as define them in the Roadie UI. This will mean the old GitHub Admin group is no longer required</p><p>Roles from all sources appear in the Role Management UI so you can understand where a user is inheriting a role from.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/7bfOOPurLzILJnlPFVAN1T/5728a62b4855ea0582d47618c54445c2/Screenshot_2024-06-21_at_11.16.52.png" alt="Roles from an IdP"></p><h3>🆔 User management</h3><p>You can then attach users to roles in the User Management UI and update the roles (and therefore permissions) that a user has access to on-the-fly.</p><p>As part of the switch-over to the new permissions system we run a background task to map the old roles system to the new one so there's no switching cost for existing customers.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/68wOJOShKad1siBeR2uqoJ/4446d1a3f29715ea38761a82fc18b5bd/Screenshot_2024-06-21_at_11.17.45.png" alt="Users and permissions"></p><h3>🛃 Custom permissions and roles</h3><p>The out of the box roles will get you so far, but any organisations need or want a higher degree of control over who can see what in their Catalog, who has the right permissions to trigger Scaffolder actions, and which elements of Tech Insights are or aren't displayed to certain users.</p><p>That's where custom permissions policies and roles step in.</p><p>The ability to create new roles and attach fine-grained permissions are optional paid extras and will cover use cases like hiding services in the catalog or controlling who can run individual scaffolder templates. We can setup trials/start discussions if you’re interested.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/2cx3kN942BaakmUkL2KGZ9/6e5f30b24da50c924c937585393aca4e/Screenshot_2024-06-21_at_11.17.28.png" alt="Custom roles"></p><h2>What's next for RBAC?</h2><h3>Individual entity permissions</h3><p>At the moment, while we allow for a much higher degree of control over the catalog than before, we haven't drilled down to the individual entity level to say <code>You need to have </code>permissions-to-view-X-component` to view X component'. That's next.</p><p>That will mean you can:</p><ul><li>Control access to individual components or entities</li><li>Control access to scaffolder templates and actions</li><li>And create your own extremely specific permissions to target these entities</li></ul><hr><h3>🙌 Backstage 1.26</h3><p>We've now upgraded everyone to <a href="https://backstage.io/docs/releases/v1.26.0/" title="Backstage 1.26">1.26</a>. This upgrade introduced some significant changes to the authentication system and lays the groundwork for the <a href="https://drodil.medium.com/backstage-notifications-ceedf812ceef" title="Heikki Hellgren&#x27;s Medium Post on Notifications">notification systems</a> that lands fully in the next few versions.</p><hr><h3>🔌 Plugins &#x26; Integrations roundup</h3><ul><li><strong>Humanitec plugin</strong>: we now expose the <a href="https://roadie.io/docs/integrations/humanitec/" title="Humanitec Plugin">Humanitec plugin</a>, so you can view deployment information insider Roadie. Fun.</li><li><strong>Coder plugin</strong>: speaking of plugins, we also integrated the <a href="https://roadie.io/docs/integrations/coder/" title="Coder Plugin">new Coder plugin</a>. Tying neatly together Humanitec and Coder, Humanitec recently ran <a href="https://humanitec.com/events/coder-with-backstage-the-missing-link-in-developer-productivity-2024-06-18" title="Humanitec Coder Webinar">a webinar</a> on how Coder thinks about integrating into Backstage which is worth checking out.</li><li><strong>AWS tag-based relationships</strong>: last but not least, on the topic of catalog data sources this time rather than plugins - we 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.</li></ul>
]]></content:encoded></item><item><title><![CDATA[Customising the Roadie UI]]></title><link>https://roadie.io/blog/a-more-customisable-roadie/</link><guid isPermaLink="false">https://roadie.io/blog/a-more-customisable-roadie/</guid><pubDate>Fri, 17 May 2024 11:00:00 GMT</pubDate><description><![CDATA[Customisations of the sidebar and the Catalog UI have arrived 🎉 as part of a whole suite of tools UI tweaks and tools designed to reduce the cognitive load for users as your catalog grows.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h3>🗂️ Customising the Catalog UI</h3><p>Your Catalog should match how you organise teams and build software. In the past, you've had to use Backstage nomenclature to model those concepts in the Catalog, but no more.</p><p>We've introduced <a href="https://roadie.io/docs/catalog/custom-views/" title="Custom Catalog Tabs">Catalog Customisation</a> in the Admin area so you can use your own naming conventions and concepts to define your Catalog using Kinds and Types and simplify the UI for everyone.</p><p>Add, edit, and reorder Catalog tabs to your hearts content.</p><p>Docs can be found <a href="https://roadie.io/docs/catalog/custom-views/" title="Custom Catalog Tabs">here</a> on how to get started.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/6nWCFVgI1YOAEoZZ0cowOi/37391bc6e6d8dbbcbd6a0dec94e7d83b/Screenshot_2024-05-13_at_10.52.14.png" alt="Custom Catalog Tabs"></p><h3>💈 Sidebar slimming</h3><p>In the same vein, we have also opened up support for full customisation of the sidebar.</p><p>This was possible in a limited capacity in the past, but you can now modify the whole kit and caboodle. This applies across your instance of Roadie for all users, allowing Admins to slim down the sidebar and reduce information overhead for everyone.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/4Mk8XleuQxmZ9IgF1Mxm6L/8f380b8c65cf28c2e9fdfe37cda7cc2f/Screenshot_2024-05-13_at_10.50.49.png" alt="Sidebar Customisation"></p><h3>🌅 Surfacing metadata</h3><p>We've also making customisation easier by introducing a <code>EntityMetadataCard</code>. <a href="https://roadie.io/docs/catalog/entity-metadata-card/" title="Entity Metadata Card">The new card</a> allows you to pull in any metadata you'd like from a catalog-info.yaml file and surface it on an Entity page. This allows you to pull in rich information on things like ownership or the last time an entity was updated, without the effort of writing a custom Typescript plugin to do the same job.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/67AHwiIOdBHkxS7JW2YxO3/e6b38a7e5bb4d91b2c9f19f300382be7/entity-info-card.webp" alt="Entity Metadata Card"></p><h3>🌈 New default fonts, padding and colours</h3><p>You may also have noticed Roadie has had a general facelift. This is part of our efforts to make it easier for users to consume visual information on any given Roadie page. This will be a long-running piece of work for us, but expect Roadie to just look and feel <em>nicer</em> in the weeks and months to come.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/2rVXuvS7JbQ9oJOMxmrbpM/544cf8cf18f9481fdcd85f0e5ccae115/Screenshot_2024-05-13_at_10.46.28.png" alt="New Roadie UI"></p><h3>🙌 Filters for all!</h3><p>We've also added Advanced Filters to all Catalog Kinds. This allows you to create a filtered, linkable views to share with colleagues. It has previously been possible to use Advanced Filters for a number of different Catalog Kinds, but now it's available for all.</p><p>Happy filtering :)</p><h3>🔌 Plugin roundup</h3><p>We've added a new <a href="https://roadie.io/docs/integrations/dynatrace/">Dynatrace</a> plugin. This is the best plugin for customers of hosted Dynatrace services. You can also access the Dynatrace plugin for self-managed users, which has been renamed <code>Dynatrace for Managed</code> in line with Dynatrace naming conventions.</p><p>This is part of our efforts to more closely sync up with plugin maintainers like <a href="https://www.dynatrace.com/" title="Dynatrace">Dynatrace</a> to make sure Roadie customer feedback reaches them. Their plugins get better, Roadie gets better, you get a better service from both. Win, win, win. 🤝</p>
]]></content:encoded></item><item><title><![CDATA[A more customisable Scaffolder]]></title><link>https://roadie.io/blog/a-more-customisable-scaffolder/</link><guid isPermaLink="false">https://roadie.io/blog/a-more-customisable-scaffolder/</guid><pubDate>Thu, 11 Apr 2024 11:00:00 GMT</pubDate><description><![CDATA[Extensions to the Scaffolder UI and Custom Actions for Templates have arrived 🎉 as part of a whole suite of tools designed to help get more value from automation within Roadie.

We've also added the Dynatrace Plugin and adopted the all new, super-shiny PagerDuty plugin.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h3>🤖 Custom Scaffolder Actions.</h3><p>Templates and the Scaffolder get heavily used by our customers to democratise common tasks like adjusting cloud account budgets or making changes to some Terraform repos.</p><p>One of the historic limitations with the Roadie Scaffolder has been that customers were unable to create and use their own custom actions. This added some friction for more advanced Scaffolder users where they were limited by the Scaffolder Actions that we supported by us when they came to write a Template.</p><p>No more though! Roadie customers can now create their own self-hosted Custom Scaffolder Actions.</p><p>That means:</p><ol><li>You can now write your own Scaffolder Actions to complete a task or use some custom CLI that Roadie isn't aware of</li><li>Then register those Actions in Roadie - as many as your heart desires.</li><li>Context can then be passed back and forth between Roadie and these Actions within any template you write.</li></ol><p>Detailed docs can be found <a href="https://roadie.io/docs/scaffolder/self-hosted-scaffolder-actions/" title="Self-hosted Custom Scaffolder Actions">here</a> to get started.</p><h3>⽥ Custom Field Extensions</h3><p>In the same vein, we have also opened up support for <a href="https://roadie.io/docs/scaffolder/custom-fields/" title="Custom Field Extensions">Custom Field Extensions</a> for the Scaffolder.</p><p>You can write your own React Components and validator functions to handle the use cases not currently covered by the existing Templates. This allows you to customise a lot of the Scaffolder forms to your hearts content.</p><h3>🔌 Plugin roundup</h3><ul><li><p>The <a href="https://roadie.io/docs/integrations/dynatrace/">Dynatrace plugin</a> is now supported on Roadie. You can use it to surface recent problems, error traces, and synthetics results for your services.</p></li><li><p>The <a href="https://pagerduty.github.io/backstage-plugin-docs/" title="PagerDuty Plugin">PagerDuty plugin</a> has had a significant upgrade thanks to the fine work Tiago Barbosa is doing as part of PagerDuty taking maintainership of the plugin earlier this year. We've adopted the new plugin, so you'll see a slick new UI and some additional features as they rollout.</p></li></ul>
]]></content:encoded></item><item><title><![CDATA[Repositories have come to the Catalog]]></title><link>https://roadie.io/blog/repositories-in-the-catalog/</link><guid isPermaLink="false">https://roadie.io/blog/repositories-in-the-catalog/</guid><pubDate>Mon, 11 Mar 2024 11:00:00 GMT</pubDate><description><![CDATA[Repositories have come to the Catalog (in beta) 🎉 as part of a whole suite of tools designed to help get to a complete catalog. We also have an AWS Resource Provider and new Catalog editing tools. 

We've also added the End of Life Plugin (both frontend and backend parts) to allow for some neat visualisation of deprecation information.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h3>🤖 [Beta] Repositories have come to the Catalog.</h3><p>We think a lot about catalog completeness at Roadie.</p><p>One of the most successful strategies we've come across to aid in getting components into the catalog is to surface what <em>is</em> in the catalog against a list of repositories. The gap between the two help to identify what <em>is not</em> in the catalog. Simple.</p><p>To help customers do this as easily as possible we've brought Repositories in from the cold and added them as a core part of the Catalog.</p><p>That means:</p><ol><li>There is a new Repository tab in the Catalog</li><li>Repositories are auto-discovered for GitHub users. For other SCMs <a href="https://roadie.io/docs/api/catalog/" title="Roadie API Docs">the Roadie API</a> is available to push your repositories in.</li><li>Quick editing of Repositories inside the Catalog table itself.</li></ol><h3>📝 Set owners and other properties in the Catalog table UI (no yaml required)</h3><p>We’ve expanded <a href="https://roadie.io/blog/decorators-product-announcement/">Decorators</a> again to allow editing of <code>Title</code>, <code>Owner</code>, <code>Type</code> and <code>Lifecycle</code> for Catalog entities from the Catalog table itself.</p><p>You can now edit the title, owner, type and lifecycle of entities right in the Catalog table UI. All without yaml. Just click the pencil icon in the <code>Actions</code> section of whatever row you'd like to edit.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/1cl5EkTjzszI9voiNoZ9UJ/3de1de44f578977f62111d3040f71f8d/Screenshot_2024-03-11_at_12.19.40.png" alt="Catalog editing"></p><h3>⛏️ [Beta] Auto-discover AWS Resources with our new provider</h3><p>Our customers often want to represent AWS resources in the Catalog and have been using the Roadie API to do just that. There's a simpler way though, so we decided to build it. Behold: the <a href="https://roadie.io/docs/integrations/aws-resources/">Roadie &#x3C;> AWS Provider</a>.</p><p>It can currently be configured to pull in:</p><ul><li>Lambda functions</li><li>EKS clusters</li><li>S3 buckets</li><li>DynamoDB tables</li><li>EC2 instances</li><li>and RDS DBs</li></ul><p>Coming soon: AWS Accounts.</p><h3>⏫ Upgrade to Backstage 1.23</h3><p>We’ve upgraded Backstage to 1.23 for all customers:</p><ul><li>A fix to a vulnerability identified by us as part of our annual third-party penetration test. It related to the Scaffolder and didn't actually affect us, but we worked on fixing it with the core Spotify team to keep the rest of the community safe. More info <a href="https://backstage.io/blog/2024/02/28/security-notice" title="Backstage Security Notice">here</a>.</li><li>A tweak to Nunchucks trimblocks that allows for creating control over templating in the Scaffolder, worked on by our own Miklos, one of the core Roadie team.</li></ul><p>Full release notes for Backstage <a href="https://backstage.io/docs/releases/v1.23.0">1.23</a>.</p><h3>🔌 Plugin roundup</h3><ul><li>The <em>new</em><a href="https://roadie.io/docs/integrations/endoflife/" title="End of Life Plugin">End of Life plugin</a> is now supported on Roadie. We've bought in both the frontend and the backend for this plugin, so it is able to read from repository files via the "source-location" annotation. It’s nice. We like it.</li></ul><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/7cgHthpgj20HR0clcUysC/c7c07996740fdbc8161a800e0ccc6db6/end-of-life-example.png" alt="End of Life Example"></p>
]]></content:encoded></item><item><title><![CDATA[The Roadie API is now live and scorecards have come to the Catalog]]></title><link>https://roadie.io/blog/roadie-api-snyk-id-techinsights-exclusions/</link><guid isPermaLink="false">https://roadie.io/blog/roadie-api-snyk-id-techinsights-exclusions/</guid><pubDate>Mon, 12 Feb 2024 11:00:00 GMT</pubDate><description><![CDATA[The Roadie API is now live for all users on our Growth Plan 🎉. You can use it to push entities to the catalog, dry-run the scaffolder and interrogate TechInsights scorecards. 

We've also added Scorecards to the Catalog, excluding facts is now possible when creating TechInsights checks, expanded the use of decorators, upgraded to Backstage 1.21 and added a few new plugins.]]></description><content:encoded><![CDATA[<p><em>The latest features and updates from Roadie.</em></p><h3>🤖 The Roadie API is now live for all users on our Growth Plan.</h3><p>It includes:</p><ol><li>The Backstage <strong><a href="https://roadie.io/docs/api/catalog/">catalog API</a></strong> exposed, via token authentication for Roadie customers.</li><li>A <strong><a href="https://roadie.io/docs/api/templates/">scaffolder API</a></strong> for testing templates in continuous integration (via dry-run), triggering templates, and listing historical scaffolder runs.</li><li>A **<a href="https://roadie.io/docs/api/techinsights/">Tech Insights API**</a> that allows you to create, read, update and delete scorecards, checks and data sources.</li></ol><p>At the moment <a href="https://roadie.io/docs/api/authorization/">API token</a> generation is limited to Admins. If you are an Admin and need a token, simply navigate to Administration (bottom of the sidebar) and Account (in the tabs across the top). Give your token a name and click Generate Token.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/6wst5xDM43P3UHIPEYYAre/08a6212019cf4b2992ff74e99c6f9dbd/Screenshot_2024-02-12_at_12.46.01.png" alt="Roadie API"></p><h3>🎨 More Decorators: you can now set owners and other properties in the Roadie UI (no yaml required)</h3><p>We’ve expanded <a href="https://roadie.io/blog/decorators-product-announcement/">Decorators</a> to allow setting many more fields on the Entities in your catalog.</p><ul><li>You can now override the owner, lifecycle and tags of Components right in the Roadie UI.</li><li>Groups and all other Entity Kinds have also been expanded so that more properties can be set.</li></ul><p>All without yaml. Just use the <code>Decorate Entity</code> feature in the top left corner of each Component page. Simple.</p><h3>💯 Scorecards in the Catalog</h3><p>How to surface scorecard information to teams is something we think a lot about at Roadie. A few months ago we added Rollups to help. This month we launched Scorecards in the Catalog to increase visibility and discoverability for teams. This is something with a long history (<a href="https://github.com/backstage/backstage/issues/2292" title="Backstage Issue - Status API">the original discussion in the Backstage community</a> was way back in September 2020) and it's something <a href="https://www.linkedin.com/posts/davidtuite_back-in-year-1-of-the-backstage-from-spotify-activity-7161038359232937986-wKYp/?utm_source=share&#x26;utm_medium=member_desktop" title="David Tuite&#x27;s LinkedIn Post">we're hyped about</a>.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/4Y5F1Y6GcftXCeKnGrplvz/d2110fe969a6ee8fe14a416b6367ad21/Scorecards.jpeg" alt="Scorecards in the Catalog"></p><h3>🙅‍♂️ Tech Insights gets exclusions (in beta) and a new Facts list</h3><p>We’re currently beta testing the ability to <em>exclude</em> entities from a Tech Insights scorecard and a check. This will give fine-grain control over the checks and scorecards you can create and pinpoint areas of your catalog.</p><p>We’ve also added a Facts list under the Data tab in Tech Insights to improve discovery of what you can and can’t do with Tech Insights data sources.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/5lbeWnmujHpGlSlbeFiAlq/c5be380c7c6ee48ac9ff3ca91ff10a19/Tech_Insights___Create_a_check___Backstage_-_12_February_2024.gif" alt="TechInsights Exclusions"></p><h3>⏫ Upgrade to Backstage 1.21</h3><p>We’ve upgraded Backstage to 1.21 for all customers. The biggest change since the last update at the end of 2023 is the new scaffolder UI with horizontal paging.</p><p>The upgrade to <a href="https://backstage.io/docs/releases/v1.21.0/" title="Backstage 1.21 Release Notes">1.21</a> also fixes a small but annoying bug that was pointed out by some customers: the scroll position of TechDocs pages now returns to the top when you navigate between different docs.</p><p>Our next version bump will be to 1.23 when that lands (hopefully later this month).</p><h3>🔌 Plugin roundup</h3><ul><li>The <em>new</em><a href="https://pagerduty.github.io/backstage-plugin-docs/" title="PagerDuty Plugin Docs">PagerDuty</a> plugin is now supported. PagerDuty took over support for the plugin in January, deprecated the old plugin and launched their own version. It’s nice. We like it.</li><li>The <a href="https://roadie.io/backstage/plugins/pulumi/" title="Roadie Pulumi Plugin">Pulumi</a> plugin is now supported. With it, you can bring infrastructure data associated with your Pulumi stack into Backstage.</li><li>The <a href="https://roadie.io/backstage/plugins/cost-insights/" title="Cost Insights Docs for self-hosted Backstage users">Cost Insights</a> plugin now has beta support. If you're interested reach out to one of the Roadie team on Slack, Discord or Teams.</li></ul>
]]></content:encoded></item><item><title><![CDATA[Rollups for Tech Insights]]></title><link>https://roadie.io/blog/rollups-tech-insights/</link><guid isPermaLink="false">https://roadie.io/blog/rollups-tech-insights/</guid><pubDate>Tue, 14 Nov 2023 00:00:00 GMT</pubDate><description><![CDATA[Rollups aggregate Scorecard and Check data by team and department, up and down your organisational hierarchy, and let you add scorecard information to teams in the catalog.]]></description><content:encoded><![CDATA[<p>In addition to <a href="/blog/decorators-product-announcement/">the recent announcement of Decorators</a>, and a <a href="/blog/live-custom-backstage-plugins-within-seconds/">much faster custom plugins pipeline</a>, we’ve also shipped Rollups for Tech Insights users.</p><h2>Tech Insights</h2><h3>Rollups</h3><p>Rollups aggregate Scorecard and Check data by team and department, up and down your organisational hierarchy, and let you add scorecard information to teams in the catalog. Learn more below in the Tech Insights section.</p><p>Here’s an example for a team called “engineering”.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/1mpMLv2BfD1K9fcWp976xF/5f9610715aa86c6939a6b1f356f9e08b/group-profile-rollup.png" alt="group-profile-rollup"></p><p>From this, we can see that the engineering team is doing a great job of using PagerDuty correctly, but could do better at Dependabot configuration. If there are other teams reporting to this one in the org chart then their data will be rolled up into this view also.</p><p>Add the <code>ScorecardResultForGroup</code> and <code>ScorecardResultsTableForGroup</code> Cards to Group layouts to see results like this.</p><p>You can also see this data presented in report format on a single Scorecard, and dive into the data at different levels in the org.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/Ow2jrqj6OYVqztbK8yQyn/14b61ab16193893487c39440a31ada71/rollup-report-format.png" alt="rollup-report-format"></p><h3>Bug fixes and improvements</h3><p>This month has been packed with improvements.</p><ul><li>We’ve got a built-in Data Source that scans for errors in CODEOWNERS files.</li><li>We’ve got a built-in Data Source that ensures your branch protection is correct.</li><li>The built-in Snyk Data Source has been updated to use the <code>github.com/project-slug</code> where possible.</li><li>We fixed some rounding errors in our Check calculations.</li><li>We fixed a labelling issue where there were two inputs called Type on the New Check form.</li><li>We fixed a bug where regex comparison results were exporting incorrectly.</li><li>We fixed a bug where selected annotations or labels in the filters of Scorecards couldn’t be deselected.</li><li>Improved the performance of Data Sources which iterate over repos containing hundreds of thousands of files.</li><li>The “is not blank” operator used to incorrectly ask for a value. Now it doesn’t.</li><li>We had mislabeled the “Number” type as “Integer”. This is fixed.</li><li>Markdown is now supported in Check descriptions so you can link to supporting documentation.</li><li>The Proxy input is now a typeahead so it’s easier to find your favorite proxy.</li><li>Scorecard rings now calculate in a more accurate way. A Component used to have to pass all checks on a scorecard to be counted in the ring. Now all checks that are passed will contribute to the score.</li><li>We brought consistency and sanity to the positioning of the Re-run, Recalculate and Refresh buttons on Scorecards, Checks and Data Sources.</li><li>Fixed some bugs which would prevent scorecards from showing up in the catalog in some cases.</li><li>GitHub based Data Sources now filter out archived repos.</li><li>Improved a bunch of help text sections on the New Data Source page.</li></ul><h2>Catalog</h2><h3>Decorators</h3><p>Decorators allow you to easily add metadata to the stuff you track in your Roadie Backstage catalog. Check out <a href="/blog/decorators-product-announcement/">the blog post</a> for full details and to learn how to use them. One simple use case is to <a href="/docs/catalog/rich-team-pages/">use decorators to add a Team Charter and some links to groups in the catalog</a>.</p><h3>Bug fixes and improvements</h3><ul><li>API specs are now searchable. Start your endpoint searches with a forward slash.</li><li>Renamed “Create…” in the sidebar to Templates. “Create…” was ambiguous.</li><li>We removed Tools from the sidebar and moved its pages into Administration.</li><li>The card used for displaying Links now hides itself from the interface when there are no links.</li><li>Catalog table column visibility is now independently set for each Kind of Entity.</li><li>Catalog tables can now display a links column.
<img src="//images.ctfassets.net/hcqpbvoqhwhm/6xaMoTIyKVuC7eigEaHR3V/149e19c863db6be4d5e2275f8de1a3bf/links-column.png" alt="links-column"></li><li>Entity Titles are now displayed in the catalog table instead of name when possible.</li><li>Admins can now change the sidebar color in the Theme settings.</li><li>We improved the Locations Log and renamed it to Administration → Entity Locations. You can also find it in the tabs of the Import page.</li></ul>
]]></content:encoded></item><item><title><![CDATA[Live custom Backstage plugins within seconds]]></title><link>https://roadie.io/blog/live-custom-backstage-plugins-within-seconds/</link><guid isPermaLink="false">https://roadie.io/blog/live-custom-backstage-plugins-within-seconds/</guid><pubDate>Mon, 02 Oct 2023 23:00:00 GMT</pubDate><description><![CDATA[Develop custom plugins with a live preview within Roadie Backstage, and deploy them to production in seconds with the Roadie CLI.]]></description><content:encoded><![CDATA[<p><em>Develop custom plugins with a live preview within Roadie Backstage, and deploy them to production in seconds with the Roadie CLI.</em></p><p>An Internal Developer Portal is as good as it tackles your teams’ unique challenges. While Roadie comes with <a href="https://roadie.io/backstage/plugins/">dozens of integrations</a>—such as PagerDuty, ArgoCD, and Sentry— your teams most likely rely on custom workflows, private systems, or in-house tools as part of their software development life cycle. Bringing those specific requirements into your Developer Portal can streamline your developer experience significantly.</p><p>For example, Lunar Bank built a <a href="https://www.youtube.com/watch?v=6T3Mf6pdg7E&#x26;list=PLj6h78yzYM2PyrvCoOii4rAopBswfz1p7">dead-letter management plugin</a>, while American Airlines centralized their permissions requests through a custom section of their Backstage instance.</p><p>Roadie offers tools to simplify the development and deployment of your custom plugins.</p><h3>Getting Started scaffolder template</h3><p>Register Roadie’s <em><a href="https://roadie.io/docs/custom-plugins/getting-started/#1-register-the-roadie-plugins-monorepo-scaffolder-template-into-your-application">New Custom Plugin</a></em> scaffolder template to jump-start your plugin development. The template will ask you a few details about your plugin and then create a new repository with a basic plugin structure and sample code.</p><h3>Dev previews within your instance</h3><p>Once you have your custom plugin running on your machine, you can get a live preview right within your Roadie instance. Your instance will automatically be updated with any code changes which will be applied when you refresh the page.</p><p>When writing a custom plugin for Roadie, you can use <a href="https://roadie.io/docs/custom-plugins/available-apis/#discoveryapi">APIs provided as React hook</a>s so you don’t have to deal with async requests or authentication at the plugin level.</p><p>You can preview all your plugin’s views within Roadie: pages, widgets, and cards. Furthermore, you can rely on <a href="https://roadie.io/docs/details/previewing-changes/">preview entities</a> to help you develop faster.</p><h3>Deploying custom plugins to Roadie</h3><p>Using the Roadie CLI, you can <a href="https://roadie.io/docs/custom-plugins/deploying/">build and deploy your Backstage plugins</a> and see them in your instance within a few seconds after you push them upstream. The simplest option for deployment is to let Roadie host your plugin, but you can also deploy your plugin to other services like Netlify or GitHub Pages.</p>
]]></content:encoded></item><item><title><![CDATA[Decorators for rich Team pages]]></title><link>https://roadie.io/blog/decorators-product-announcement/</link><guid isPermaLink="false">https://roadie.io/blog/decorators-product-announcement/</guid><pubDate>Mon, 25 Sep 2023 23:00:00 GMT</pubDate><description><![CDATA[Today we released a feature we call Decorators. Decorators allow you to easily add metadata to the stuff you track in your Roadie Backstage catalog. This metadata is stored within Roadie, and not written to YAML.]]></description><content:encoded><![CDATA[<p>Today we released a feature we call Decorators. Decorators allow you to easily add metadata to the stuff you track in your Roadie Backstage catalog. This metadata is stored within Roadie, and not written to YAML.</p><h2>How to use Decorators</h2><p>Using Decorators is simple:</p><ol><li>Visit an Entity in your Roadie Backstage catalog (e.g. a team, service or system).</li><li>Click the three dots in the top right corner and click “Decorate entity”.</li><li>Add links or annotations to the Entity and press Save.</li></ol><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/4h1q3yO1NT3FxMp2aJpkVg/3e256457df259c031d43d61394a3c4a1/usage.gif" alt="usage.gif"></p><p>Decorators you create are <strong>stored inside Roadie and not written back to the YAML file</strong> that backs the Entity.</p><p>This means that Entity metadata can come from multiple places for the same Entity. One annotation could come from YAML, and another from Decorators.</p><p>You can see where a specific piece of metadata is backed off to by clicking the three dots again and clicking “Inspect entity”. In this case below, the <code>backstage.io/source-location</code> is internal to Backstage and the other items are applied by Roadie Decorators.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/E0Zw1isylkgpkJ8Ile4YX/433c187ef187de65fa2432379eabff55/Screenshot_2023-09-19_at_13.18.53.png" alt="decoratorsscreenshot1"></p><h2>Why we’re doing this</h2><p>The introduction of Decorators is a slight deviation from the Backstage way of doing things, so it’s important that we explain why we’re doing this.</p><h3>Auto-ingested sources need decoration</h3><p>Backstage implementations frequently source the hierarchy of Users and Groups from a tool like GitHub Teams, Okta, or a Human Resources application like BambooHR. To support this, Backstage has a number of integrations into these tools.</p><p>These integrations will typically stream the hierarchy of Users and Groups into the Backstage catalog.</p><p>The problem with automatically ingesting Users and Groups is that Backstage users don’t get a chance to enrich their Group with information like links to Slack channels or a team charter. This leads to dead looking Group pages in Backstage.</p><p>Decorators give Backstage users a way to enrich their Group with the information that they want to show-off.</p><h2>What this is not</h2><p>We’re not introducing anything brand new in the Backstage ecosystem and we’re not introducing vendor lock-in.</p><h3>There’s precedent</h3><p>Backstage itself adds internal annotations to each Entity. These annotations are not written back to the YAML files. They are instead stored inside the Backstage database.</p><p>You can see some examples of this internal metadata here:</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/1K4L8wOBioMn7WkqohIDG5/8d7f0010e23bcf9318753ae4ab3fa6f5/Screenshot_2023-09-19_at_14.54.43.png" alt="decoratorsscreenshot2"></p><p>Roadie is simply piggybacking on this mechanism, to add the ability to store links and annotations.</p><h3>We’re Backstage API compatible</h3><p>We’re not introducing any Roadie-specific changes to the Backstage API or the spec for Backstage YAML files. We’re just making it easier to add values to the existing spec.</p><p>Entity Decorations are available via the standard Backstage HTTP API that we expose, so you can always write them back to YAML if you wish.</p><p>In the future, we will look to support “exporting” Decorators into any YAML file that backs the entity.</p>
]]></content:encoded></item><item><title><![CDATA[New Catalog UI, certified templates, more tutorials]]></title><link>https://roadie.io/blog/august-2023-product-updates/</link><guid isPermaLink="false">https://roadie.io/blog/august-2023-product-updates/</guid><pubDate>Mon, 04 Sep 2023 23:00:00 GMT</pubDate><description><![CDATA[This month we're rolling out a huge visual update to the catalog with much more space to get your work done. We've also got a bunch of new Tech Insights tutorials to help you improve software across your org.]]></description><content:encoded><![CDATA[<p>This month we're rolling out a huge visual update to the catalog with much more space to get your work done. We've also got a bunch of new Tech Insights tutorials to help you improve software across your org.</p><h2>Catalog</h2><h3>New catalog page preview</h3><p>You will shortly see a new catalog page roll out on Roadie. This update affects the main software catalog table, and the filters around it.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/7KI6pUUtyeyIhaRNpyNV0b/7891467b8cd1c191e2cedf3af05f7c31/new-catalog-page.png" alt="new-catalog-page"></p><p>This new catalog table brings a number of enhancements:</p><ol><li><strong>More horizontal space</strong> for reading the table. We’ve moved the filters to the top so the table is wider.</li><li><strong>Per user configurable columns</strong>. You can customize the table to show the info that’s important to you. We’ll soon be persisting column choice in your browser so you can pick up where you left off (this is coming imminently).</li><li><strong>Kind specific columns</strong>. Groups used to have an owner column and Users were missing Display Name. We’ve tidied these up and introduced more sensible defaults.</li><li><strong>New table features</strong>. Configurable densities and full screen mode make for slicker presentation. Filter highlights make it easier to find what you’re looking for.</li><li><strong>Persisted filter choices</strong>. If you mostly work with Templates, we’ll keep you on the template page when you navigate away and back.</li><li><strong>Sharable filter choices</strong>. Filters will be in the URL so you can share a link to a specific subset of data.</li></ol><p>All this is building up to the ability to bring Tech Insights data front and centre in the catalog. We want to show scorecards in a column so you can drive more action around important migrations and software quality issues. More on this in the coming weeks and months.</p><h2>Fixed: Disappearing Azure repos entities</h2><p>We spent 3 weeks tracking down and fixing a tricky bug that would cause Entities discovered from Azure Repos to periodically and temporarily disappear from the catalog.</p><p>This is demonstrated by the wigglyness of the entities count before the fix, compared to how flat it is after.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/72CAZ4wOpZZSLFBr2eQGVR/f31a60ffd7f70dcc920724dc193a2785/azure-counts.png" alt="azure-counts"></p><p>It turns out the Azure APIs don’t return consistent results unless a sort is specified on the queries. <a href="https://github.com/backstage/backstage/pull/19478">Here’s the upstream fix we made to Backstage.</a></p><p>This is a really good example of the value Roadie adds. Are bugs like this how you want your Developer Experience team spending their time?</p><h2>Tech Insights</h2><h3>Group check data by owner</h3><p>Check results are now grouped by owner as well as by Component. This makes it easier to track down the team who own the most Components which are failing the check.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/ptAybGAfD7wZpt3EsXVSW/98ade626385901a28b9f297e8d5157ef/group-by-owner.png" alt="group-by-owner"></p><p>We’re currently working to expand this to scorecards, and to aggregate the data up and down the hierarchy of teams, so you can view it at any level.</p><h3>New tutorials</h3><p>We added 4 Tech Insights tutorials this month. Learn how to…</p><ol><li><a href="/docs/tech-insights/track-codeowners-usage/">Find software that doesn’t have a valid CODEOWNERS file</a>.</li><li><a href="/docs/tech-insights/enforce-branch-protection/">Find software that doesn’t have branch protection enabled</a>.</li><li><a href="/docs/tech-insights/track-sonarcloud/">Connect Tech Insights to SonarCloud to collect security hotspot data</a>.</li><li><a href="/docs/tech-insights/track-sonarqube/">Connect Tech Insights to an on-prem SonarQube instance</a>.</li></ol><h3>Bug fixes and improvements</h3><ul><li>We fixed a bug where some Data Sources would fail with an Out of Memory error.</li><li>We now support the YAML content type response when sending HTTP requests in Data Sources.</li><li>Data Sources can now send POST requests for GraphQL APIs and other use cases.</li><li>We rolled out a new version of our broker to patch a <a href="https://github.com/snyk/broker/issues/579">security vulnerability</a>.</li></ul><h2>Scaffolder</h2><h3>Certified label for scaffolder templates</h3><p>You can now add the Certified label to scaffolder templates to designate them as Platform Team approved and ready for use.</p><p><img src="//images.ctfassets.net/hcqpbvoqhwhm/381yzSvf8mK51Ywv4pcjtj/9469016d7c00239f5f9ed4d0b1295ba9/certified-template.png" alt="certified-template"></p><p>Just add the certified annotation to make this work.</p><pre><code class="language-yaml">apiVersion: scaffolder.backstage.io/v1beta3
kind: Template
metadata:
  name: my-template
  annotations:
    roadie.io/certified: "true"
</code></pre><h3>Bug fixes and improvements</h3><ul><li>The scaffolder now supports a task to open a pull request against Azure repos.</li><li>We updated <a href="/docs/scaffolder/writing-templates/">our scaffolder docs page</a> to include more examples and APIs.</li></ul>
]]></content:encoded></item></channel></rss>