What is a system?¶
A system is a label used to group together multiple related services. This label is recognized and used by backstage in order to make it clear what services interact with eachother. They are a concept which is provided by backstage out of the box, and is documented by them here
How to create a system¶
In order to create a system, you simply need to add a new definition for it to the ADP software templates repository. There is an example system to show the format that should be used. Once this system is added, you need to add a link to it from the all.yaml file. You will also need to choose a name for your system, which should be in the format {delivery-project-id}-{system-name}-system
e.g. fcp-demo-example-system
.
Once the system has been added and the all.yaml
file has been updated, you will need to wait for the ADP portal to re-scan the repository which happens every hour. If you need the system to be available sooner than that, then an ADP admin can trigger a refresh at any time by requesting a refresh of the project-systems location.
The all.yaml
file¶
The all.yaml
file is what tells the ADP portal where to find the systems, and so every file containing a definition for a system must be pointed to by this file. To point to a new file, you will need to add a new entry to the targets
array which should be the relative path from the all.yaml
file to your new system file.
all.yaml
The {system}.yaml
file¶
Your system will actually be defined inside its own .yaml
file. The name of this file should be the name of the system you are creating to make it easier to track which system is defined where. The format of this file should follow this example:
my-system.yaml