mirror of
https://github.com/hashicorp/vault.git
synced 2026-05-05 04:16:31 +02:00
* fill guided start content * move namespace logic into page component * add page component tests for namespace wizard * add tree chart and changelog, update state management * fix failing page usage test * add back in breadcrumb update lost in merge conflict resolution across files * fix test * update terraform template function usage * Update ui/app/components/wizard/namespaces/step-3.hbs * formatting and fixes * revert usage page changes * move snippet generators into util and update code snippet initialization * update test namespace page args * move namespace wizard logic into its own component * fix nested namespace creation via api and cli code snippets * test update * nested namespace terraform snippet * remove outdated comment * test clean up and hide wizard in CE --------- Co-authored-by: lane-wetmore <lane.wetmore@hashicorp.com> Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
53 lines
1.6 KiB
TypeScript
53 lines
1.6 KiB
TypeScript
/**
|
|
* Copyright IBM Corp. 2016, 2025
|
|
* SPDX-License-Identifier: BUSL-1.1
|
|
*/
|
|
|
|
import Component from '@glimmer/component';
|
|
|
|
export enum SecurityPolicy {
|
|
FLEXIBLE = 'flexible',
|
|
STRICT = 'strict',
|
|
}
|
|
|
|
interface Args {
|
|
wizardState: {
|
|
securityPolicyChoice: SecurityPolicy | null;
|
|
};
|
|
}
|
|
|
|
export default class WizardNamespacesStep1 extends Component<Args> {
|
|
policy = SecurityPolicy;
|
|
|
|
get cardInfo() {
|
|
const { wizardState } = this.args;
|
|
if (wizardState.securityPolicyChoice === SecurityPolicy.FLEXIBLE) {
|
|
return {
|
|
title: 'Single namespace',
|
|
description:
|
|
'Your organization should be comfortable with your current setup of one global namespace. You can always add more namespaces later.',
|
|
bestFor: [
|
|
'Small teams or orgs just getting started with Vault.',
|
|
'Centralized platform teams managing all secrets.',
|
|
],
|
|
avoidIf: [
|
|
'You need strong isolation between teams or business units.',
|
|
'You plan to scale to 100+ applications or secrets engines.',
|
|
'You anticipate needing per-team Terraform workflows.',
|
|
],
|
|
};
|
|
}
|
|
return {
|
|
title: 'Multiple namespaces',
|
|
description:
|
|
'Create isolation for clear ownership and scalability for strictly separated teams or applications.',
|
|
diagram: '~/multi-namespace.gif',
|
|
bestFor: [
|
|
'Heavily regulated organizations with strict boundary enforcement between tenants.',
|
|
'Organizations already confident with Terraform and namespace scoping.',
|
|
],
|
|
avoidIf: ["You're not absolutely sure you need hard isolation and nesting."],
|
|
};
|
|
}
|
|
}
|