v1.17.0
These are the release notes for the v1.17.0 release of Backstage.
A huge thanks to the whole team of maintainers and contributors as well as the amazing Backstage Community for the hard work in getting this release developed and done.
Highlights
Changes to the New Backend System
For this release we had another look at the new backend system, in particular how well it fits together with the concept of plugin installation without code modification, and we identified a number of breaking changes that we wanted to make.
We have removed the ability to define options for plugins and modules, and force them to be optional for services. Options have been moved either to static configuration or extension points, and modules now also have the ability to register extension points.
Service factories are now considered BackendFeature
s and are installed via backend.add(...)
rather than via the services
option, which has been removed.
The configuration service has also been renamed to rootConfig
in order to match other root-scoped services and make space for a potential plugin-scoped configuration service in the future.
The shared environments concept has been removed. We are still interested in having some way to define reusable presets in the new system, but shared environments were too limited.
We expect these to be the last broad breaking changes to the new backend system, and are likely to start encouraging use of it in the next release.
Catalog Telemetry with Processing Tracing
The Catalog has been instrumented with some simple OpenTelemetry Spans so you can now dig into the processing loop and see it in action using tracing.
Contributed by @mikebryant in #17534
New each
property for Scaffolder Actions
You can now define an each
iterable in the steps
for a template, which will run a given action for each entry in the iterable.
Contributed by @alexef in #18157
Updated proxy configuration
The shape of the proxy plugin configuration has been changed in order to make space for additional keys. Rather than defining the proxy endpoints directly under proxy
, they should now be defined at proxy.endpoints
instead.
OpenAPI Support for Backend Plugins
You can now use OpenAPI specs to generate typed routers for your backend plugins with request validation using createOpenApiRouter()
. There’s been some movement to support this for some of the plugins in the monorepo like todo
, search
and catalog
.
Contributed by @sennyeya in #17875
New plugin: @backstage/plugin-catalog-backend-module-gcp
Allows ingestion of GKE Clusters as Resources into the Catalog. Contributed by @mclarke47 in #18759
Security Fixes
This release does not contain any security fixes.
Upgrade path
We recommend that you keep your Backstage project up to date with this latest release. For more guidance on how to upgrade, check out the documentation for keeping Backstage updated.
Links and References
Below you can find a list of links and references to help you learn about and start using this new release.
- Backstage official website, documentation, and getting started guide
- GitHub repository
- Backstage's versioning and support policy
- Community Discord for discussions and support
- Changelog
- Backstage Demos, Blog, Roadmap and Plugins
Sign up for our newsletter if you want to be informed about what is happening in the world of Backstage.