Add managed databases and services with billing-aligned upgrades.
Introduce product types for managed PostgreSQL, Redis, and RabbitMQ with a dedicated dashboard, Helm-only deploy pipeline, external access, snapshots with progress, and prorated resource or storage upgrades matching application billing rules. PVCs use an expandable StorageClass with automatic migration when legacy disks cannot resize in place. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -44,6 +44,25 @@ export enum DatabaseType {
|
||||
NONE = 'none',
|
||||
}
|
||||
|
||||
/** Standalone managed offerings vs full application deploy. */
|
||||
export enum ProductType {
|
||||
APPLICATION = 'application',
|
||||
MANAGED_DATABASE = 'managed_database',
|
||||
MANAGED_REDIS = 'managed_redis',
|
||||
MANAGED_RABBITMQ = 'managed_rabbitmq',
|
||||
}
|
||||
|
||||
export function isManagedProductType(productType?: ProductType | string): boolean {
|
||||
return (
|
||||
productType === ProductType.MANAGED_DATABASE ||
|
||||
productType === ProductType.MANAGED_REDIS ||
|
||||
productType === ProductType.MANAGED_RABBITMQ
|
||||
);
|
||||
}
|
||||
|
||||
/** Stored in latestImageTag after a managed service is provisioned via Helm (no app image build). */
|
||||
export const MANAGED_DEPLOY_MARKER = 'helm-managed';
|
||||
|
||||
// Optional services that can be attached to an application
|
||||
export enum OptionalService {
|
||||
REDIS = 'redis',
|
||||
|
||||
Reference in New Issue
Block a user