Roadie

Register Catalog Entities

Action ID: catalog:register
NPM Package:

@backstage/plugin-scaffolder-backend

Description

Registers entities from a catalog descriptor file in the workspace into the software catalog.

Input Schema

PropertyTypeDescriptionRequired
enumany-
typeany-
itemsany-
optionalany-
descriptionany-

Output Schema

No output schema defined for this action.

Usage Examples

Register a newly published GitHub repository catalog descriptor

Registers the catalog-info.yaml from the repository you just published. Use this immediately after publish:github to add the new component to the catalog.

yaml
steps:
  - id: fetch-base
    action: fetch:template
    input:
      url: ./skeleton
      targetPath: .
      values:
        componentId: ${{ parameters.componentId }}
        owner: ${{ parameters.owner }}
        description: ${{ parameters.description }}

  - id: publish
    action: publish:github
    input:
      repoUrl: github.com?owner=acme-inc&repo=${{ parameters.componentId }}
      description: ${{ parameters.description }}
      defaultBranch: main
      repoVisibility: private

  - id: register
    action: catalog:register
    input:
      repoContentsUrl: ${{ steps.publish.output.repoContentsUrl }}
      catalogInfoPath: /catalog-info.yaml

Register an existing repository descriptor by URL

Registers a catalog descriptor that already exists in a remote repository. Use this to onboard an existing project without publishing new code, optionally after gathering inputs with fetch:template.

yaml
steps:
  - id: register-existing
    action: catalog:register
    input:
      catalogInfoUrl: ${{ parameters.catalogInfoUrl }}

Other actions in @backstage/plugin-scaffolder-backend