63d3a4d3da
Adds a widget to show recent git workflow runs to the github actions plugin. The default setting is the last 5 runs across all branches but both branch and the number of runs are configurable.
GitHub Actions Plugin
Website: https://github.com/actions
Screenshots
TBD
Setup
Generic Requirements
-
Provide OAuth credentials:
- Create an OAuth App with callback URL set to
https://localhost:3000/auth/github. - Take Client ID and Client Secret from the newly created app's settings page and put them into
AUTH_GITHUB_CLIENT_IDandAUTH_GITHUB_CLIENT_SECRETenv variables.
- Create an OAuth App with callback URL set to
-
Annotate your component with a correct GitHub Actions repository and owner:
The annotation key is
github.com/project-slug.Example:
apiVersion: backstage.io/v1alpha1 kind: Component metadata: name: backstage description: backstage.io annotations: github.com/project-slug: 'spotify/backstage' spec: type: website lifecycle: production owner: guest
Standalone app requirements
If you didn't clone this repo you have to do some extra work.
- Add plugin API to your Backstage instance:
yarn add @backstage/plugin-github-actions
// packages/app/src/api.ts
import { ApiRegistry } from '@backstage/core';
import { GithubActionsClient, githubActionsApiRef } from '@backstage/plugin-github-actions';
const builder = ApiRegistry.builder();
builder.add(githubActionsApiRef, new GithubActionsClient());
export default builder.build() as ApiHolder;
- Add plugin itself:
// packages/app/src/plugins.ts
export { plugin as GithubActions } from '@backstage/plugin-github-actions';
- Run the app with
yarn startand the backend withyarn --cwd packages/backend start, navigate to/github-actions/.
Features
- List workflow runs for a project
- Dive into one run to see a job steps
- Retry runs
- Pagination for runs
Limitations
- There is a limit of 100 apps for one OAuth client/token pair