@backstage-community/plugin-github-pull-requests-board
TypeScript icon, indicating that this package has built-in type declarations

0.2.8 • Public • Published

GitHub Pull Requests Board Plugin

The GitHub Pull Requests Board Plugin helps to visualise all Open Pull Requests related to the owned team repository.

github-pull-requests-board

It will help you and your team stay on top of open pull requests, hopefully reducing the time from open to merged. It's particularly useful when your team deals with many repositories.

Prerequisites

Getting started

Install the plugin by running the following command from your Backstage root directory

yarn --cwd packages/app add @backstage-community/plugin-github-pull-requests-board

The plugin exports the EntityTeamPullRequestsCard component which can be added to the Overview page of the team at backstage/packages/app/src/components/catalog/EntityPage.tsx

import { EntityTeamPullRequestsCard } from '@backstage-community/plugin-github-pull-requests-board';

const groupPage = (
  <EntityLayoutWrapper>
    <EntityLayout.Route path="/" title="Overview">
      <Grid container spacing={3}>
        {entityWarningContent}
        <Grid item xs={12} md={6}>
          <EntityGroupProfileCard variant="gridItem" />
        </Grid>
        <Grid item xs={12} md={6}>
          <EntityOwnershipCard
            variant="gridItem"
            entityFilterKind={customEntityFilterKind}
          />
        </Grid>
        <Grid item xs={12}>
          <EntityMembersListCard />
        </Grid>
        <Grid item xs={12}>
          <EntityTeamPullRequestsCard />
        </Grid>
      </Grid>
    </EntityLayout.Route>
  </EntityLayoutWrapper>
);

Or you can also import the EntityTeamPullRequestsContent component which can be used to add a new tab under the group page at backstage/packages/app/src/components/catalog/EntityPage.tsx

import { EntityTeamPullRequestsContent } from '@backstage-community/plugin-github-pull-requests-board';

const groupPage = (
    <EntityLayoutWrapper>
        <EntityLayout.Route path="/" title="Overview">
            <Grid container spacing={3}>
            {entityWarningContent}
            <Grid item xs={12} md={6}>
                <EntityGroupProfileCard variant="gridItem" />
            </Grid>
            <Grid item xs={12} md={6}>
                <EntityOwnershipCard
                variant="gridItem"
                entityFilterKind={customEntityFilterKind}
                />
            </Grid>
            <Grid item xs={12}>
                <EntityMembersListCard />
            </Grid>
            </Grid>
        </EntityLayout.Route>
        <EntityLayout.Route path="/pull-requests" title="Pull Requests">
            <EntityTeamPullRequestsContent />
        </EntityLayout.Route>
    </EntityLayoutWrapper>;
)

Integrating with the new Frontend System

Follow this section if you are using Backstage's new frontend system.

Import githubPullRequestsPlugin in your App.tsx and add it to your app's features array:

import githubPullRequestsPlugin from '@backstage-community/plugin-github-pull-requests-board/alpha';
// ...
export const app = createApp({
  features: [
    // ...
    githubPullRequestsPlugin,
    // ...
  ],
});

Package Sidebar

Install

npm i @backstage-community/plugin-github-pull-requests-board

Homepage

backstage.io

Weekly Downloads

2,577

Version

0.2.8

License

Apache-2.0

Unpacked Size

173 kB

Total Files

62

Last publish

Collaborators

  • patriko