Merge branch 'master' of https://github.com/spotify/backstage into lintMod

This commit is contained in:
Debajyoti Halder
2021-01-29 14:05:27 +05:30
244 changed files with 4425 additions and 1286 deletions
+9
View File
@@ -1,5 +1,14 @@
# @backstage/plugin-kubernetes
## 0.3.7
### Patch Changes
- 681111228: Add AWS auth provider for Kubernetes
- a6e3b9596: Improve error reporting for plugin misconfiguration.
- Updated dependencies [681111228]
- @backstage/plugin-kubernetes-backend@0.2.6
## 0.3.6
### Patch Changes
+22 -39
View File
@@ -1,9 +1,29 @@
# kubernetes
# Kubernetes
Welcome to the kubernetes plugin!
Welcome to the Backstage Kubernetes frontend plugin!
This plugin exposes information about your entity-specific Kubernetes objects with a desire to provide value to the service owner, rather than just a Kubernetes cluster administrator.
It will elevate the visibility of errors where identified, and provide drill down about the deployments, pods, and other objects for a service.
It directly interfaces with the [Kubernetes Backend Plugin (`@backstage-plugin-kubernetes-backend`)](https://github.com/backstage/backstage/tree/master/plugins/kubernetes-backend).
_This plugin was created through the Backstage CLI_
## Introduction
See our announcement blog post [New Backstage feature: Kubernetes for Service Owners](https://backstage.io/blog/2021/01/12/new-backstage-feature-kubernetes-for-service-owners) to learn more about the motivation behind developing the plugin.
## Setup & Configuration
This plugin must be explicitly added to a Backstage app, along with it's peer backend plugin.
It requires configuration in the Backstage `app-config.yaml` to connect to a Kubernetes API control plane.
In addition, configuration of an entity's `catalog-info.yaml` helps identify which specific Kubernetes object(s) should be presented on a specific entity catalog page.
For more information, see the [formal documentation about the Kubernetes feature in Backstage](https://backstage.io/docs/features/kubernetes/overview).
## 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](http://localhost:3000/kubernetes).
@@ -11,40 +31,3 @@ Your plugin has been added to the example app in this repository, meaning you'll
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](./dev) directory.
## Surfacing your Kubernetes components as part of an entity
There are two 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.
```yaml
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:
```yaml
'backstage.io/kubernetes-id': <ENTITY_NAME>
```
### label selector query annotation
#### Adding a label selector query annotation
You can write your own custom label selector query that backstage will use to lookup the objects (similar to `kubectl --selector="your query here"`)
review the documentation [here](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/) for more info
```yaml
'backstage.io/kubernetes-label-selector': 'app=my-app,component=front-end'
```
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@backstage/plugin-kubernetes",
"version": "0.3.6",
"version": "0.3.7",
"main": "src/index.ts",
"types": "src/index.ts",
"license": "Apache-2.0",
@@ -34,7 +34,7 @@
"@backstage/catalog-model": "^0.7.0",
"@backstage/config": "^0.1.2",
"@backstage/core": "^0.5.0",
"@backstage/plugin-kubernetes-backend": "^0.2.5",
"@backstage/plugin-kubernetes-backend": "^0.2.6",
"@backstage/theme": "^0.2.2",
"@kubernetes/client-node": "^0.13.2",
"@material-ui/core": "^4.11.0",
@@ -47,7 +47,7 @@
"react-use": "^15.3.3"
},
"devDependencies": {
"@backstage/cli": "^0.4.7",
"@backstage/cli": "^0.5.0",
"@backstage/dev-utils": "^0.1.8",
"@backstage/test-utils": "^0.1.6",
"@testing-library/jest-dom": "^5.10.1",
+2 -2
View File
@@ -35,11 +35,11 @@ export interface Config {
/**
* @visibility secret
*/
serviceAccountToken: string;
serviceAccountToken: string | undefined;
/**
* @visibility frontend
*/
authProvider: 'serviceAccount';
authProvider: 'aws' | 'google' | 'serviceAccount';
}[];
};
}