End of Life logo

Backstage End of Life Plugin

End of Life data for your software catalog

Created by dweber019

Available on Roadie@dweber019/backstage-plugin-endoflife

Set up Backstage in minutes with Roadie

Installation steps

Install the EoL plugin into Backstage.

yarn --cwd packages/app add @dweber019/backstage-plugin-endoflife

Add endoflife.date/products metadata to your catalog-info files to tag entities with relevant dependencies. Multiple values can be comma separated.

apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
  name: some-angular-nginx-component
  annotations:
    endoflife.date/products: angular, nginx

You can also add specific versions for more precise tracking

apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
  name: some-angular-nginx-component
  annotations:
    endoflife.date/products: angular@17,nginx@1.25

Add the EntityEndOfLifeCard to the EntityPage.

// packages/app/src/components/catalog/EntityPage.tsx

import { EntityEndOfLifeCard } from '@dweber019/backstage-plugin-endoflife';

const overviewContent = (
  <Grid container spacing={3} alignItems="stretch">
    {entityWarningContent}
    ...
    <EntitySwitch>
      <EntitySwitch.Case if={hasLabels}>
        <Grid item md={4} xs={12}>
          <EntityLabelsCard />
        </Grid>
      </EntitySwitch.Case>
    </EntitySwitch>
    <EntitySwitch>
      <EntitySwitch.Case if={isEndOfLifeAvailable}>
        <Grid item md={6}>
          <EntityEndOfLifeCard />
        </Grid>
      </EntitySwitch.Case>
    </EntitySwitch>
    ...
  </Grid>
);

Found a mistake? Update these instructions.

Things to know

Set up Backstage in minutes with Roadie