Merge pull request #3427 from backstage/feat/kubernetes-config-schema

feat: added config schema for k8s plugins
This commit is contained in:
Ben Lambert
2020-11-24 17:51:52 +01:00
committed by GitHub
4 changed files with 78 additions and 2 deletions
+3 -1
View File
@@ -10,6 +10,7 @@
"main": "dist/index.cjs.js",
"types": "dist/index.d.ts"
},
"configSchema": "schema.d.ts",
"scripts": {
"start": "backstage-cli backend:dev",
"build": "backstage-cli backend:build",
@@ -42,6 +43,7 @@
"supertest": "^4.0.2"
},
"files": [
"dist"
"dist",
"schema.d.ts"
]
}
+27
View File
@@ -0,0 +1,27 @@
/*
* Copyright 2020 Spotify AB
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
export interface Config {
kubernetes?: {
serviceLocatorMethod: 'multiTenant';
clusterLocatorMethods: 'config'[];
clusters: {
url: string;
name: string;
serviceAccountToken: string;
authProvider: 'serviceAccount';
}[];
};
}
+3 -1
View File
@@ -9,6 +9,7 @@
"main": "dist/index.esm.js",
"types": "dist/index.d.ts"
},
"configSchema": "schema.d.ts",
"scripts": {
"build": "backstage-cli plugin:build",
"start": "backstage-cli plugin:serve",
@@ -47,6 +48,7 @@
"msw": "^0.21.2"
},
"files": [
"dist"
"dist",
"schema.d.ts"
]
}
+45
View File
@@ -0,0 +1,45 @@
/*
* Copyright 2020 Spotify AB
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
export interface Config {
kubernetes?: {
/**
* @visibility frontend
*/
serviceLocatorMethod: 'multiTenant';
/**
* @visibility frontend
*/
clusterLocatorMethods: 'config'[];
clusters: {
/**
* @visibility frontend
*/
url: string;
/**
* @visibility frontend
*/
name: string;
/**
* @visibility secret
*/
serviceAccountToken: string;
/**
* @visibility frontend
*/
authProvider: 'serviceAccount';
}[];
};
}