Files
backstage/plugins/kubernetes
Moustafa Baiou e2085293a6 feat(kubernetes): update k8s-backend plugin to use label selectors
update plugin to use label selectors when querying backend
2020-11-23 06:16:57 -05:00
..
2020-11-12 10:52:23 +00:00
2020-11-19 15:13:57 +00:00

kubernetes

Welcome to the kubernetes plugin!

This plugin was created through the Backstage CLI

Getting started

Your plugin has been added to the example app in this repository, meaning you'll be able to access it by running yarn start in the root directory, and then navigating to /kubernetes.

You can also serve the plugin in isolation by running yarn start in the plugin directory. This method of serving the plugin provides quicker iteration speed and a faster startup and hot reloads. It is only meant for local development, and the setup for it can be found inside the /dev directory.

Surfacing your Kubernetes components as part of an entity

There are 2 ways to surface your kubernetes components as part of an entity. The label selector takes precedence over the annotation/service id.

Common backstage.io/kubernetes-id label

Adding the entity annotation

In order for Backstage to detect that an entity has Kubernetes components, the following annotation should be added to the entity.

annotations:
  'backstage.io/kubernetes-id': dice-roller

Labeling Kubernetes components

In order for Kubernetes components to show up in the service catalog as a part of an entity, Kubernetes components must be labeled with the following label:

'backstage.io/kubernetes-id': <ENTITY_NAME>

Full label selector

Adding the entity label selector to the spec

In order for Backstage to detect that an entity has kubernetes components the kubernetes.selector must have a valid selector. (Currently only matchLabels is supported)

spec:
  kubernetes:
    selector:
      matchLabels:
        someKey: someValue
        other-key: other-value
        app.kubernetes.io/name: dice-roller