Merge pull request #11508 from goenning/go/expose-detecterrors
[Kubernetes Plugin] expose detectErrors function publicly
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
---
|
||||
'@backstage/plugin-kubernetes': patch
|
||||
---
|
||||
|
||||
expose detectErrors function publicly
|
||||
@@ -98,6 +98,28 @@ export interface DeploymentResources {
|
||||
replicaSets: V1ReplicaSet[];
|
||||
}
|
||||
|
||||
// @alpha
|
||||
export interface DetectedError {
|
||||
// (undocumented)
|
||||
cluster: string;
|
||||
// (undocumented)
|
||||
kind: ErrorDetectableKind;
|
||||
// (undocumented)
|
||||
message: string[];
|
||||
// (undocumented)
|
||||
names: string[];
|
||||
// (undocumented)
|
||||
severity: ErrorSeverity;
|
||||
}
|
||||
|
||||
// @alpha
|
||||
export type DetectedErrorsByCluster = Map<string, DetectedError[]>;
|
||||
|
||||
// @alpha
|
||||
export const detectErrors: (
|
||||
objects: ObjectsByEntityResponse,
|
||||
) => DetectedErrorsByCluster;
|
||||
|
||||
// Warning: (ae-missing-release-tag) "EntityKubernetesContent" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
||||
//
|
||||
// @public (undocumented)
|
||||
@@ -110,6 +132,12 @@ export type EntityKubernetesContentProps = {
|
||||
refreshIntervalMs?: number;
|
||||
};
|
||||
|
||||
// @alpha
|
||||
export type ErrorDetectableKind =
|
||||
| 'Pod'
|
||||
| 'Deployment'
|
||||
| 'HorizontalPodAutoscaler';
|
||||
|
||||
// Warning: (ae-forgotten-export) The symbol "ErrorPanelProps" needs to be exported by the entry point index.d.ts
|
||||
// Warning: (ae-missing-release-tag) "ErrorPanel" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
||||
//
|
||||
@@ -128,6 +156,9 @@ export const ErrorReporting: ({
|
||||
detectedErrors,
|
||||
}: ErrorReportingProps) => JSX.Element;
|
||||
|
||||
// @alpha
|
||||
export type ErrorSeverity = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10;
|
||||
|
||||
// Warning: (ae-forgotten-export) The symbol "FormatClusterLinkOptions" needs to be exported by the entry point index.d.ts
|
||||
// Warning: (ae-missing-release-tag) "formatClusterLink" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
||||
//
|
||||
|
||||
@@ -21,8 +21,12 @@ import { detectErrorsInPods } from './pods';
|
||||
import { detectErrorsInDeployments } from './deployments';
|
||||
import { detectErrorsInHpa } from './hpas';
|
||||
|
||||
// For each cluster try to find errors in each of the object types provided
|
||||
// returning a map of cluster names to errors in that cluster
|
||||
/**
|
||||
* For each cluster try to find errors in each of the object types provided
|
||||
* returning a map of cluster names to errors in that cluster
|
||||
*
|
||||
* @alpha
|
||||
*/
|
||||
export const detectErrors = (
|
||||
objects: ObjectsByEntityResponse,
|
||||
): DetectedErrorsByCluster => {
|
||||
|
||||
@@ -14,5 +14,10 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
export type { DetectedError, DetectedErrorsByCluster } from './types';
|
||||
export type {
|
||||
ErrorDetectableKind,
|
||||
DetectedError,
|
||||
DetectedErrorsByCluster,
|
||||
ErrorSeverity,
|
||||
} from './types';
|
||||
export { detectErrors } from './error-detection';
|
||||
|
||||
@@ -21,17 +21,37 @@ import {
|
||||
V1Pod,
|
||||
} from '@kubernetes/client-node';
|
||||
|
||||
/**
|
||||
* Severity of the error, where 10 is critical and 0 is very low.
|
||||
*
|
||||
* @alpha
|
||||
*/
|
||||
export type ErrorSeverity = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10;
|
||||
|
||||
export type ErrorDetectable = V1Pod | V1Deployment | V1HorizontalPodAutoscaler;
|
||||
|
||||
/**
|
||||
* Kubernetes kinds that errors might be reported by the plugin
|
||||
*
|
||||
* @alpha
|
||||
*/
|
||||
export type ErrorDetectableKind =
|
||||
| 'Pod'
|
||||
| 'Deployment'
|
||||
| 'HorizontalPodAutoscaler';
|
||||
|
||||
/**
|
||||
* A list of errors keyed by Cluster name
|
||||
*
|
||||
* @alpha
|
||||
*/
|
||||
export type DetectedErrorsByCluster = Map<string, DetectedError[]>;
|
||||
|
||||
/**
|
||||
* Represents an error found on a Kubernetes object
|
||||
*
|
||||
* @alpha
|
||||
*/
|
||||
export interface DetectedError {
|
||||
severity: ErrorSeverity;
|
||||
cluster: string;
|
||||
|
||||
@@ -31,5 +31,6 @@ export * from './api';
|
||||
export * from './kubernetes-auth-provider';
|
||||
export * from './utils/clusterLinks';
|
||||
export * from './components';
|
||||
export * from './error-detection';
|
||||
export * from './hooks';
|
||||
export * from './types';
|
||||
|
||||
Reference in New Issue
Block a user