Skip to main content

ScmIntegration

Home > @backstage/integration > ScmIntegration

Encapsulates a single SCM integration.

Signature:

export interface ScmIntegration 

Properties

Property

Modifiers

Type

Description

title

string

A human readable title for the integration, that can be shown to users to differentiate between different integrations.

type

string

The type of integration, e.g. "github".

Methods

Method

Description

resolveEditUrl(url)

Resolves the edit URL for a file within the SCM system.

Most SCM systems have a web interface that allows viewing and editing files in the repository. The returned URL directly jumps into the edit mode for the file. If this is not possible, the integration can fall back to a URL to view the file in the web interface.

resolveUrl(options)

Resolves an absolute or relative URL in relation to a base URL.

This method is adapted for use within SCM systems, so relative URLs are within the context of the root of the hierarchy pointed to by the base URL.

For example, if the base URL is <repo root url>/folder/a.yaml, i.e. within the file tree of a certain repo, an absolute path of /b.yaml does not resolve to https://hostname/b.yaml but rather to <repo root url>/b.yaml inside the file tree of that same repo.