From 53bd1e2af24608e2bf9f191cbdc48276a1fe580d Mon Sep 17 00:00:00 2001 From: Dan Rivera Date: Thu, 7 Aug 2025 17:40:32 -0400 Subject: [PATCH] UI: Adding flag for displaying old or new page views for secret engines (#31451) * adding oldengine flag and comments in metadata util * remnant --- ui/app/utils/all-engines-metadata.ts | 34 ++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/ui/app/utils/all-engines-metadata.ts b/ui/app/utils/all-engines-metadata.ts index fb8df7948c..1044fffb24 100644 --- a/ui/app/utils/all-engines-metadata.ts +++ b/ui/app/utils/all-engines-metadata.ts @@ -24,14 +24,15 @@ export interface EngineDisplayData { pluginCategory?: string; // The plugin category is used to group engines in the UI. e.g., 'cloud', 'infra', 'generic' displayName: string; - engineRoute?: string; + engineRoute?: string; // engines that have their own Ember engine will have this route defined. glyph?: string; - isWIF?: boolean; // flag for 'Workload Identity Federation' engines. + isWIF?: boolean; // flag for 'Workload Identity Federation' engines. - https://developer.hashicorp.com/hcp/docs/hcp/iam/service-principal/workload-identity-federation mountCategory: string[]; requiredFeature?: string; // flag for engines that require the ADP (Advanced Data Protection) feature. - https://www.hashicorp.com/en/blog/advanced-data-protection-adp-now-available-in-hcp-vault requiresEnterprise?: boolean; isConfigurable?: boolean; // for secret engines that have their own configuration page and actions. - These engines do not exist in their own Ember engine. isOnlyMountable?: boolean; // The UI only supports configuration views for these secrets engines. The CLI must be used to manage other engine resources (i.e. roles, credentials). + isOldEngine?: boolean; // flag for engine views, if set to true, the engine will show pre-existing page design, if not, then the new views will be used. This is temporary until all engines have been migrated to the new design. type: string; value?: string; } @@ -66,6 +67,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'cloud', displayName: 'AliCloud', glyph: 'alibaba-color', + isOldEngine: true, mountCategory: ['auth', 'secret'], type: 'alicloud', }, @@ -73,6 +75,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'generic', displayName: 'AppRole', glyph: 'cpu', + isOldEngine: true, mountCategory: ['auth'], type: 'approle', value: 'approle', @@ -82,6 +85,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ displayName: 'AWS', glyph: 'aws-color', isConfigurable: true, + isOldEngine: true, isWIF: true, mountCategory: ['auth', 'secret'], type: 'aws', @@ -90,6 +94,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'cloud', displayName: 'Azure', glyph: 'azure-color', + isOldEngine: true, isOnlyMountable: true, isConfigurable: true, isWIF: true, @@ -100,11 +105,13 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'infra', displayName: 'Consul', glyph: 'consul-color', + isOldEngine: true, mountCategory: ['secret'], type: 'consul', }, { displayName: 'Cubbyhole', + isOldEngine: true, type: 'cubbyhole', mountCategory: ['secret'], }, @@ -112,6 +119,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'infra', displayName: 'Databases', glyph: 'database', + isOldEngine: true, mountCategory: ['secret'], type: 'database', }, @@ -119,6 +127,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'cloud', displayName: 'GitHub', glyph: 'github-color', + isOldEngine: true, mountCategory: ['auth'], type: 'github', value: 'github', @@ -127,6 +136,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'cloud', displayName: 'Google Cloud', glyph: 'gcp-color', + isOldEngine: true, isOnlyMountable: true, isConfigurable: true, isWIF: true, @@ -137,6 +147,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'cloud', displayName: 'Google Cloud KMS', glyph: 'gcp-color', + isOldEngine: true, mountCategory: ['secret'], type: 'gcpkms', }, @@ -144,6 +155,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'generic', displayName: 'JWT', glyph: 'jwt', + isOldEngine: true, mountCategory: ['auth'], type: 'jwt', value: 'jwt', @@ -153,6 +165,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ displayName: 'KV', engineRoute: 'kv.list', glyph: 'key-values', + isOldEngine: true, mountCategory: ['secret'], type: 'kv', }, @@ -161,6 +174,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ displayName: 'KMIP', engineRoute: 'kmip.scopes.index', glyph: 'lock', + isOldEngine: true, mountCategory: ['secret'], requiredFeature: 'KMIP', requiresEnterprise: true, @@ -170,6 +184,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'generic', displayName: 'Transform', glyph: 'transform-data', + isOldEngine: true, mountCategory: ['secret'], requiredFeature: 'Transform Secrets Engine', requiresEnterprise: true, @@ -189,6 +204,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ displayName: 'Kubernetes', engineRoute: 'kubernetes.overview', glyph: 'kubernetes-color', + isOldEngine: true, mountCategory: ['auth', 'secret'], type: 'kubernetes', }, @@ -197,6 +213,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ displayName: 'LDAP', engineRoute: 'ldap.overview', glyph: 'folder-users', + isOldEngine: true, mountCategory: ['auth', 'secret'], type: 'ldap', }, @@ -204,6 +221,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'infra', displayName: 'Nomad', glyph: 'nomad-color', + isOldEngine: true, mountCategory: ['secret'], type: 'nomad', }, @@ -211,6 +229,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'generic', displayName: 'OIDC', glyph: 'openid-color', + isOldEngine: true, mountCategory: ['auth'], type: 'oidc', value: 'oidc', @@ -219,6 +238,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'infra', displayName: 'Okta', glyph: 'okta-color', + isOldEngine: true, mountCategory: ['auth'], type: 'okta', value: 'okta', @@ -228,6 +248,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ displayName: 'PKI Certificates', engineRoute: 'pki.overview', glyph: 'certificate', + isOldEngine: true, mountCategory: ['secret'], type: 'pki', }, @@ -235,6 +256,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'infra', displayName: 'RADIUS', glyph: 'mainframe', + isOldEngine: true, mountCategory: ['auth'], type: 'radius', value: 'radius', @@ -243,6 +265,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'infra', displayName: 'RabbitMQ', glyph: 'rabbitmq-color', + isOldEngine: true, mountCategory: ['secret'], type: 'rabbitmq', }, @@ -250,6 +273,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'generic', displayName: 'SAML', glyph: 'saml-color', + isOldEngine: true, mountCategory: ['auth'], requiresEnterprise: true, type: 'saml', @@ -259,6 +283,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'generic', displayName: 'SSH', glyph: 'terminal-screen', + isOldEngine: true, isConfigurable: true, mountCategory: ['secret'], type: 'ssh', @@ -267,6 +292,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'generic', displayName: 'TLS Certificates', glyph: 'certificate', + isOldEngine: true, mountCategory: ['auth'], type: 'cert', value: 'cert', @@ -275,6 +301,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'generic', displayName: 'TOTP', glyph: 'history', + isOldEngine: true, mountCategory: ['secret'], type: 'totp', }, @@ -282,11 +309,13 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'generic', displayName: 'Transit', glyph: 'swap-horizontal', + isOldEngine: true, mountCategory: ['secret'], type: 'transit', }, { displayName: 'Token', + isOldEngine: true, type: 'token', mountCategory: ['auth'], }, @@ -294,6 +323,7 @@ export const ALL_ENGINES: EngineDisplayData[] = [ pluginCategory: 'generic', displayName: 'Userpass', glyph: 'users', + isOldEngine: true, mountCategory: ['auth'], type: 'userpass', value: 'userpass',