Files
gitops/ts_interfaces/data/managedsecret.ts
Juergen Kunz 75d35405dc feat(managed-secrets): add centrally managed secrets with GITOPS_ prefix pushed to multiple targets
Introduce managed secrets owned by GitOps that can be defined once and
pushed to any combination of projects/groups across connections. Values
are stored in OS keychain, secrets appear on targets as GITOPS_{key}.
2026-02-28 23:43:32 +00:00

42 lines
908 B
TypeScript

export interface IManagedSecretTarget {
connectionId: string;
scope: 'project' | 'group';
scopeId: string;
scopeName: string;
}
export type TPushStatus = 'pending' | 'success' | 'error';
export interface IManagedSecretTargetStatus {
connectionId: string;
scope: 'project' | 'group';
scopeId: string;
scopeName: string;
status: TPushStatus;
error?: string;
lastPushedAt?: number;
}
export interface IManagedSecret {
id: string;
key: string;
description?: string;
targets: IManagedSecretTarget[];
targetStatuses: IManagedSecretTargetStatus[];
createdAt: number;
updatedAt: number;
lastPushedAt?: number;
}
export interface IManagedSecretStored {
id: string;
key: string;
description?: string;
value: string;
targets: IManagedSecretTarget[];
targetStatuses: IManagedSecretTargetStatus[];
createdAt: number;
updatedAt: number;
lastPushedAt?: number;
}