feat(kubernetes): update k8s-backend plugin to use label selectors

update plugin to use label selectors when querying backend
This commit is contained in:
Moustafa Baiou
2020-10-19 23:22:08 -04:00
committed by moustafab
parent da2f4cd41a
commit e2085293a6
11 changed files with 132 additions and 74 deletions
+23 -2
View File
@@ -14,7 +14,12 @@ It is only meant for local development, and the setup for it can be found inside
## Surfacing your Kubernetes components as part of an entity
### Adding the entity annotation
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.
@@ -24,7 +29,7 @@ annotations:
'backstage.io/kubernetes-id': dice-roller
```
### Labeling Kubernetes components
#### 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:
@@ -32,3 +37,19 @@ as a part of an entity, Kubernetes components must be labeled with the following
```yaml
'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)
```yaml
spec:
kubernetes:
selector:
matchLabels:
someKey: someValue
other-key: other-value
app.kubernetes.io/name: dice-roller
```