Service Ingestion
With a populated Service Catalog, you have details on all of your services stored in a central location. You can import services into your catalog manually, but FireHydrant provides service ingestion methods to simplify the process.
Note: In addition to using the method described in this article, you can also ingest services into your catalog using FireHydrant's API.
Prerequisite: GitHub integration
To ingest services from a .yaml file stored in your organization’s GitHub repository, you must first have GitHub integration with FireHydrant configured. For details, click here.
Continuous and manual service synchronization
After you have set up service ingestion (as described below), FireHydrant searches for and ingests updates to your ingested services every hour. You can also manually force an update.
Specifying new catalog settings
To get started:
- In the FireHydrant left nav, expand Service Catalog. From the subsections, select Services. This opens a list of your existing services.
- From the options at the top of the page, click Catalog Settings.
- Click +Create Setting to add service ingestion details.
- Provide a name and description of the service.
- In the provider field, choose GitHub.
Note: The other provider option is API Only. You can also add services via API by posting service settings to an API endpoint. For details, see Ingesting services using the API.
- In the Format field, select the format of the .yaml file you want to import: Backstage or Opslevel.
Setting integration targets
- Next, specify your integration targets.
Note: The fields you see here will be slightly different for Backstage than they are for Opslevel.
-
If you are using Backstage, select GitHub as your target Type
- For Repository , provide the URL for the repository where your organization's services are stored.
- For Reference , specify the name of the commit branch (usually main or master).
- For Path , provide the path to your service.yaml file. This enables Fire Hydrant to search for your .yaml file and begin ingesting your services and their respective paths.
-
If you are using Opslevel, select GitHubScan as your target Type.
- For Repositories , provide the URL for the repository where your organization's services are stored.
- For Path , provide the path to your service.yaml file. This enables Fire Hydrant to search for your .yaml file and begin ingesting your services and their respective paths.
After you configure these settings, FireHydrant ingests your stored services. After the process is complete, you can view your ingested services from the Services tab in the FireHydrant UI.
Editing or updating service details
Any service details defined in the .yaml file will be controlled in the .yaml. You can only edit or update these details from the .yaml file in your repo; this is to maintain what is defined in your code as the source of truth in your Service Catalog. Fields that you can edit from within the FireHydrant UI contain information that is specific to FireHydrant behavior and cannot be defined in a .yaml file.