Backstage is a platform that allows you to launch and manage software development projects.
Backstage was created by the Spotify team to respond to an organizational need for microservices: “Where is the API for this service that we all supposedly use?” or “this service is not responding, who owns it?”
A centralized system that keeps track of project ownership and metadata within an ecosystem (services, websites, libraries...). It is built around the concept of metadata YAML files stored alongside the code.
To create a new component in the catalogue, simply click on create component.
You will be shown different Templates with which you can generate a skeleton of the desired software: microservices, complete projects, libraries, etc. Once you select the Template, you only have to fill in some variables such as description, package and name in a small form. The component will then appear in the catalogue together with the relevant metadata.
A Template is a YAML file with metadata on the software project that is going to be created together with a skeleton used to generate the project, already initialized and ready for logic to be added.
Templates can be created from scratch and are maintainable on Git. Essentially, they are a YAML file that describes the component creation flow, as well as a skeleton with parametrized variables that are resolved with the form in the component creation flow.
Backstage is made up of three main components:
• Core: basic system functionality.
• App: an instance of a Backstage app that is deployed and tweaked however needed. It ties together core functionality with additional plugins.
• Plugins: additional functionality to tailor the app’s behaviour to the company’s needs.
There are three types of plugins:
1. Standalone plugins run entirely on the server.
2. Service backed plugins require a backend service to function. The most important of these would be the Service Catalog, as it controls the component catalogue.
3. Third party backed plugins need an external host to function.
Backstage supports authentication with various providers:
Authentication is enabled for each deployment and other custom providers can be added.
Backstage can be easily dockerized and provides detailed information on how to do it, allowing you to tailor the source code to your needs and build your own product image.
José Luis Antón Bueso, Solution Architect at Altia.