integration-operator
Version:
kubernetes operator to integrate deployments
13 lines (12 loc) • 425 B
TypeScript
import { KubernetesObject } from '@kubernetes/client-node';
import { HashMap } from '~/types';
export default class ResourceTracker<T = KubernetesObject> {
oldResources: HashMap<T | undefined>;
getResourceId(resource: T): string;
rotateResource(resource: T): ResourcePair<T>;
resetResource(resource: T): void;
}
export interface ResourcePair<T = KubernetesObject> {
oldResource?: T;
newResource: T;
}