Consistent capitalization

This commit is contained in:
Joshua Ogle
2019-03-29 17:40:12 -06:00
parent 3b0bb64c2a
commit c13acac14f
103 changed files with 192 additions and 192 deletions

View File

@@ -63,7 +63,7 @@ export default DS.RESTAdapter.extend({
let options = passedOptions; let options = passedOptions;
let controlGroup = this.get('controlGroup'); let controlGroup = this.get('controlGroup');
let controlGroupToken = controlGroup.tokenForUrl(url); let controlGroupToken = controlGroup.tokenForUrl(url);
// if we have a control group token that matches the intendedUrl, // if we have a Control Group token that matches the intendedUrl,
// then we want to unwrap it and return the unwrapped response as // then we want to unwrap it and return the unwrapped response as
// if it were the initial request // if it were the initial request
// To do this, we rewrite the function args // To do this, we rewrite the function args

View File

@@ -125,7 +125,7 @@ export default Component.extend(DEFAULTS, {
}), }),
unwrapToken: task(function*(token) { unwrapToken: task(function*(token) {
// will be using the token auth method, so set it here // will be using the Token Auth Method, so set it here
this.set('selectedAuth', 'token'); this.set('selectedAuth', 'token');
let adapter = this.get('store').adapterFor('tools'); let adapter = this.get('store').adapterFor('tools');
try { try {
@@ -152,7 +152,7 @@ export default Component.extend(DEFAULTS, {
store.unloadAll('auth-method'); store.unloadAll('auth-method');
}); });
} catch (e) { } catch (e) {
this.set('error', `There was an error fetching auth methods: ${e.errors[0]}`); this.set('error', `There was an error fetching Auth Methods: ${e.errors[0]}`);
} }
}), }),

View File

@@ -66,12 +66,12 @@ export default Component.extend({
return 'You have been given authorization'; return 'You have been given authorization';
} }
if (isApproved) { if (isApproved) {
return 'This control group has been authorized'; return 'This Control Group has been authorized';
} }
if (currentUserIsRequesting) { if (currentUserIsRequesting) {
return 'The path you requested is locked by a control group'; return 'The path you requested is locked by a Control Group';
} }
return 'Someone is requesting access to a path locked by a control group'; return 'Someone is requesting access to a path locked by a Control Group';
}), }),
refresh: task(function*() { refresh: task(function*() {

View File

@@ -60,7 +60,7 @@ export default Component.extend({
{ {
key: 'secrets', key: 'secrets',
name: 'Secrets', name: 'Secrets',
steps: ['Enabling a secrets engine', 'Adding a secret'], steps: ['Enabling a Secrets Engine', 'Adding a secret'],
selected: false, selected: false,
show: true, show: true,
disabled: false, disabled: false,
@@ -71,7 +71,7 @@ export default Component.extend({
{ {
key: 'authentication', key: 'authentication',
name: 'Authentication', name: 'Authentication',
steps: ['Enabling an auth method', 'Managing your auth method'], steps: ['Enabling an Auth Method', 'Managing your Auth Method'],
selected: false, selected: false,
show: true, show: true,
disabled: false, disabled: false,

View File

@@ -56,11 +56,11 @@ export default Component.extend({
actionText: computed('mountSubtype', function() { actionText: computed('mountSubtype', function() {
switch (this.get('mountSubtype')) { switch (this.get('mountSubtype')) {
case 'aws': case 'aws':
return 'Generate Credential'; return 'Generate credential';
case 'ssh': case 'ssh':
return 'Sign Keys'; return 'Sign keys';
case 'pki': case 'pki':
return 'Generate Certificate'; return 'Generate certificate';
default: default:
return null; return null;
} }

View File

@@ -15,10 +15,10 @@ export default Controller.extend({
const { type, path } = method.getProperties('type', 'path'); const { type, path } = method.getProperties('type', 'path');
try { try {
yield method.destroyRecord(); yield method.destroyRecord();
this.get('flashMessages').success(`The ${type} auth method at ${path} has been disabled.`); this.get('flashMessages').success(`The ${type} Auth Method at ${path} has been disabled.`);
} catch (err) { } catch (err) {
this.get('flashMessages').danger( this.get('flashMessages').danger(
`There was an error disabling auth method at ${path}: ${err.errors.join(' ')}.` `There was an error disabling Auth Method at ${path}: ${err.errors.join(' ')}.`
); );
} }
}).drop(), }).drop(),

View File

@@ -31,10 +31,10 @@ export default Controller.extend({
const { engineType, path } = engine; const { engineType, path } = engine;
try { try {
yield engine.destroyRecord(); yield engine.destroyRecord();
this.get('flashMessages').success(`The ${engineType} secrets engine at ${path} has been disabled.`); this.get('flashMessages').success(`The ${engineType} Secrets Engine at ${path} has been disabled.`);
} catch (err) { } catch (err) {
this.get('flashMessages').danger( this.get('flashMessages').danger(
`There was an error disabling the ${engineType} secrets engine at ${path}: ${err.errors.join(' ')}.` `There was an error disabling the ${engineType} Secrets Engine at ${path}: ${err.errors.join(' ')}.`
); );
} }
}).drop(), }).drop(),

View File

@@ -31,7 +31,7 @@ export default DS.Model.extend({
config: fragment('mount-config', { defaultValue: {} }), config: fragment('mount-config', { defaultValue: {} }),
local: attr('boolean', { local: attr('boolean', {
helpText: helpText:
'When replication is enabled, a local mount will not be replicated across clusters. This can only be specified at mount time.', 'When Replication is enabled, a local mount will not be replicated across clusters. This can only be specified at mount time.',
}), }),
sealWrap: attr('boolean', { sealWrap: attr('boolean', {
helpText: helpText:

View File

@@ -16,6 +16,6 @@ export default DS.Model.extend({
maxTtl: attr({ maxTtl: attr({
defaultValue: 0, defaultValue: 0,
editType: 'ttl', editType: 'ttl',
label: 'Max TTL', label: 'Maximum TTL',
}), }),
}); });

View File

@@ -5,7 +5,7 @@ export default Fragment.extend({
version: attr('number', { version: attr('number', {
label: 'Version', label: 'Version',
helpText: helpText:
'The KV Secrets engine can operate in different modes. Version 1 is the original generic secrets engine the allows for storing of static key/value pairs. Version 2 added more features including data versioning, TTLs, and check and set.', 'The KV Secrets Engine can operate in different modes. Version 1 is the original generic Secrets Engine the allows for storing of static key/value pairs. Version 2 added more features including data versioning, TTLs, and check and set.',
possibleValues: [2, 1], possibleValues: [2, 1],
defaultFormValue: 2, defaultFormValue: 2,
}), }),

View File

@@ -23,7 +23,7 @@ export default DS.Model.extend({
options: fragment('mount-options', { defaultValue: {} }), options: fragment('mount-options', { defaultValue: {} }),
local: attr('boolean', { local: attr('boolean', {
helpText: helpText:
'When replication is enabled, a local mount will not be replicated across clusters. This can only be specified at mount time.', 'When Replication is enabled, a local mount will not be replicated across clusters. This can only be specified at mount time.',
}), }),
sealWrap: attr('boolean', { sealWrap: attr('boolean', {
helpText: helpText:

View File

@@ -1,6 +1,6 @@
<form {{action (perform saveModel) on="submit"}}> <form {{action (perform saveModel) on="submit"}}>
<div class="box is-sideless is-fullwidth is-marginless"> <div class="box is-sideless is-fullwidth is-marginless">
<NamespaceReminder @mode="save" @noun="auth method" /> <NamespaceReminder @mode="save" @noun="Auth Method" />
{{message-error model=model}} {{message-error model=model}}
{{#if model.attrs}} {{#if model.attrs}}
{{#each model.attrs as |attr|}} {{#each model.attrs as |attr|}}

View File

@@ -1,6 +1,6 @@
<form {{action (perform saveModel) on="submit"}}> <form {{action (perform saveModel) on="submit"}}>
<div class="box is-sideless is-fullwidth is-marginless"> <div class="box is-sideless is-fullwidth is-marginless">
<NamespaceReminder @mode="save" @noun="auth method" /> <NamespaceReminder @mode="save" @noun="Auth Method" />
{{message-error model=model}} {{message-error model=model}}
{{#each model.tuneAttrs as |attr|}} {{#each model.tuneAttrs as |attr|}}
{{form-field data-test-field attr=attr model=model}} {{form-field data-test-field attr=attr model=model}}

View File

@@ -6,7 +6,7 @@
</p> </p>
{{else if (eq section "crl")}} {{else if (eq section "crl")}}
<h2 class="title is-5" data-test-title="true"> <h2 class="title is-5" data-test-title="true">
Certificate Revocation List (CRL) Config Certificate Revocation List (CRL) config
</h2> </h2>
<p class="has-text-grey-dark" data-test-text="true"> <p class="has-text-grey-dark" data-test-text="true">
Set the duration for which the generated CRL should be marked valid. Set the duration for which the generated CRL should be marked valid.

View File

@@ -1,7 +1,7 @@
{{#link-to "vault.cluster.access.namespaces.create"}} {{#link-to "vault.cluster.access.namespaces.create"}}
Create namespace Create Namespace
{{/link-to}} {{/link-to}}
<LearnLink @path="/vault/security/namespaces"> <LearnLink @path="/vault/security/namespaces">
Learn More Learn more
</LearnLink> </LearnLink>

View File

@@ -25,7 +25,7 @@
Edit {{lowercase (humanize model.identityType)}} Edit {{lowercase (humanize model.identityType)}}
{{/link-to}} {{/link-to}}
<LearnLink @path="/vault/identity-access-management/iam-identity"> <LearnLink @path="/vault/identity-access-management/iam-identity">
Learn More Learn more
</LearnLink> </LearnLink>
</EmptyState> </EmptyState>
{{/each-in}} {{/each-in}}

View File

@@ -13,7 +13,7 @@
data-test-cluster-status data-test-cluster-status
data-test-warning-text data-test-warning-text
/> />
<span class="title is-5" data-test-temp-license>Temporary License</span> <span class="title is-5" data-test-temp-license>Temporary license</span>
<form {{action "saveModel" text on="submit"}}> <form {{action "saveModel" text on="submit"}}>
<div class="box is-shadowless is-fullwidth is-marginless"> <div class="box is-shadowless is-fullwidth is-marginless">
<div class="field"> <div class="field">

View File

@@ -10,15 +10,15 @@
/> />
{{#if (eq mountType "auth")}} {{#if (eq mountType "auth")}}
{{concat "Enable " typeInfo.displayName " authentication method"}} {{concat "Enable " typeInfo.displayName " Authentication Method"}}
{{else}} {{else}}
{{concat "Enable " typeInfo.displayName " secrets engine"}} {{concat "Enable " typeInfo.displayName " Secrets Engine"}}
{{/if}} {{/if}}
{{/with}} {{/with}}
{{else if (eq mountType "auth")}} {{else if (eq mountType "auth")}}
Enable an authentication method Enable an Authentication Method
{{else}} {{else}}
Enable a secrets engine Enable a Secrets Engine
{{/if}} {{/if}}
</h1> </h1>
</p.levelLeft> </p.levelLeft>
@@ -27,7 +27,7 @@
<div class="box is-sideless is-fullwidth is-marginless"> <div class="box is-sideless is-fullwidth is-marginless">
<NamespaceReminder <NamespaceReminder
@mode="enable" @mode="enable"
@noun={{if (eq mountType "auth") "auth method" "secret engine"}} @noun={{if (eq mountType "auth") "Auth Method" "secret engine"}}
/> />
{{message-error model=mountModel}} {{message-error model=mountModel}}

View File

@@ -11,9 +11,9 @@
<p.levelLeft> <p.levelLeft>
<h1 class="title is-3" data-test-secret-header="true"> <h1 class="title is-3" data-test-secret-header="true">
{{#if (eq mode "create") }} {{#if (eq mode "create") }}
Create an SSH Role Create an SSH role
{{else if (eq mode 'edit')}} {{else if (eq mode 'edit')}}
Edit SSH Role Edit SSH role
{{else}} {{else}}
SSH Role <code>{{model.id}}</code> SSH Role <code>{{model.id}}</code>
{{/if}} {{/if}}
@@ -43,7 +43,7 @@
class="button has-icon-right is-ghost is-compact" class="button has-icon-right is-ghost is-compact"
data-test-backend-credentials=true data-test-backend-credentials=true
}} }}
Generate Credentials Generate credentials
{{i-con glyph="chevron-right" size=11}} {{i-con glyph="chevron-right" size=11}}
{{/secret-link}} {{/secret-link}}
{{else}} {{else}}
@@ -53,7 +53,7 @@
class="button has-icon-right is-ghost is-compact" class="button has-icon-right is-ghost is-compact"
data-test-backend-credentials=true data-test-backend-credentials=true
}} }}
Sign Keys Sign keys
{{i-con glyph="chevron-right" size=11}} {{i-con glyph="chevron-right" size=11}}
{{/secret-link}} {{/secret-link}}
{{/if}} {{/if}}

View File

@@ -1,7 +1,7 @@
{{#if (and (or @model.isNew @canEditV2Secret) @isV2 (not @model.isStub))}} {{#if (and (or @model.isNew @canEditV2Secret) @isV2 (not @model.isStub))}}
<div data-test-metadata-fields class="form-section box is-shadowless is-fullwidth"> <div data-test-metadata-fields class="form-section box is-shadowless is-fullwidth">
<label class="title is-5"> <label class="title is-5">
Secret Metadata Secret metadata
</label> </label>
{{#each @model.fields as |attr|}} {{#each @model.fields as |attr|}}
<FormField data-test-field @attr={{attr}} @model={{this.model}} /> <FormField data-test-field @attr={{attr}} @model={{this.model}} />
@@ -13,9 +13,9 @@
<div class="form-section"> <div class="form-section">
<label class="title is-5"> <label class="title is-5">
{{#if isV2}} {{#if isV2}}
Version Data Version data
{{else}} {{else}}
Secret Data Secret data
{{/if}} {{/if}}
</label> </label>
<JsonEditor <JsonEditor
@@ -28,9 +28,9 @@
<div class="form-section"> <div class="form-section">
<label class="title is-5"> <label class="title is-5">
{{#if isV2}} {{#if isV2}}
Version Data Version data
{{else}} {{else}}
Secret Data Secret data
{{/if}} {{/if}}
</label> </label>
{{#each @secretData as |secret index|}} {{#each @secretData as |secret index|}}

View File

@@ -11,11 +11,11 @@
<p.levelLeft> <p.levelLeft>
<h1 class="title is-3"> <h1 class="title is-3">
{{#if (eq mode "create") }} {{#if (eq mode "create") }}
Create Secret Create secret
{{else if (and isV2 (eq mode 'edit'))}} {{else if (and isV2 (eq mode 'edit'))}}
Create New Version Create new version
{{else if (eq mode 'edit')}} {{else if (eq mode 'edit')}}
Edit Secret Edit secret
{{else}} {{else}}
{{key.id}} {{key.id}}
{{/if}} {{/if}}
@@ -68,7 +68,7 @@
@class={{concat "link link-plain has-text-weight-semibold" (if D.isOpen " is-active")}} @class={{concat "link link-plain has-text-weight-semibold" (if D.isOpen " is-active")}}
@tagName="button" @tagName="button"
> >
Copy Secret Copy secret
</D.trigger> </D.trigger>
<D.content @class="popup-menu-content is-wide"> <D.content @class="popup-menu-content is-wide">
<nav class="box menu"> <nav class="box menu">
@@ -92,7 +92,7 @@
data-test-wrap-button data-test-wrap-button
disabled={{isWrapping}} disabled={{isWrapping}}
> >
Wrap Secret Wrap secret
</button> </button>
{{else}} {{else}}
<MaskedInput <MaskedInput
@@ -128,7 +128,7 @@
class="link link-plain has-text-weight-semibold" class="link link-plain has-text-weight-semibold"
data-test-secret-edit="true" data-test-secret-edit="true"
> >
Edit Secret Edit secret
</LinkTo> </LinkTo>
{{/if}} {{/if}}
</div> </div>
@@ -172,9 +172,9 @@
<LinkTo class="link" @params={{array (query-params version=secretVersion.version)}}> <LinkTo class="link" @params={{array (query-params version=secretVersion.version)}}>
Version {{secretVersion.version}} Version {{secretVersion.version}}
{{#if (eq secretVersion.version this.model.currentVersion)}} {{#if (eq secretVersion.version this.model.currentVersion)}}
<ICon @glyph="checkmark-circled-outline" @excludeIconClass={{true}} @size="13" @class="has-text-success is-pulled-right" /> <ICon @glyph="checkmark-circled-outline" @excludeIconClass={{true}} @size="13" @class="has-text-success is-pulled-right" />
{{else if secretVersion.deleted}} {{else if secretVersion.deleted}}
<ICon @glyph="cancel-square-outline" @size="13" @excludeIconClass={{true}} @class="has-text-grey is-pulled-right" /> <ICon @glyph="cancel-square-outline" @size="13" @excludeIconClass={{true}} @class="has-text-grey is-pulled-right" />
{{/if}} {{/if}}
</LinkTo> </LinkTo>
</li> </li>

View File

@@ -11,11 +11,11 @@
<p.levelLeft> <p.levelLeft>
<h1 class="title is-3"> <h1 class="title is-3">
{{#if (eq mode "create") }} {{#if (eq mode "create") }}
Create Encryption Key Create encryption key
{{else if (eq mode "edit") }} {{else if (eq mode "edit") }}
Edit Encryption Key Edit encryption key
{{else}} {{else}}
Encryption Key <code>{{key.id}}</code> Encryption key <code>{{key.id}}</code>
{{/if}} {{/if}}
</h1> </h1>
</p.levelLeft> </p.levelLeft>

View File

@@ -5,7 +5,7 @@
@docPath="/docs/secrets/ad/index.html" @docPath="/docs/secrets/ad/index.html"
> >
<p> <p>
The AD secrets engine rotates AD passwords dynamically, and is designed for The AD Secrets Engine rotates AD passwords dynamically, and is designed for
a high-load environment where many instances may be accessing a shared password simultaneously. a high-load environment where many instances may be accessing a shared password simultaneously.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/secrets/alicloud/index.html" @docPath="/docs/secrets/alicloud/index.html"
> >
<p> <p>
The AliCloud secrets engine dynamically generates AliCloud access tokens based on RAM policies, or AliCloud STS credentials based on RAM roles. This generally makes working with AliCloud easier, since it does not involve clicking in the web UI. The AliCloud access tokens are time-based and are automatically revoked when the Vault lease expires. STS credentials are short-lived, non-renewable, and expire on their own. The AliCloud Secrets Engine dynamically generates AliCloud access tokens based on RAM policies, or AliCloud STS credentials based on RAM roles. This generally makes working with AliCloud easier, since it does not involve clicking in the web UI. The AliCloud access tokens are time-based and are automatically revoked when the Vault lease expires. STS credentials are short-lived, non-renewable, and expire on their own.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/auth/alicloud.html" @docPath="/docs/auth/alicloud.html"
> >
<p> <p>
The AliCloud auth method provides an automated mechanism to retrieve a Vault token for AliCloud entities. The AliCloud Auth Method provides an automated mechanism to retrieve a Vault token for AliCloud entities.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/auth/approle.html" @docPath="/docs/auth/approle.html"
> >
<p> <p>
The approle auth method allows machines or apps to authenticate with Vault-defined roles. The open design of AppRole enables a varied set of workflows and configurations to handle large numbers of apps. This auth method is oriented to automated workflows (machines and services), and is less useful for human operators. The Approle Auth Method allows machines or apps to authenticate with Vault-defined roles. The open design of AppRole enables a varied set of workflows and configurations to handle large numbers of apps. This Auth Method is oriented to automated workflows (machines and services), and is less useful for human operators.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -1,10 +1,10 @@
<WizardSection <WizardSection
@headerText="Configuring Your Auth Method" @headerText="Configuring your Auth Method"
@docText="Docs: Authentication Methods" @docText="Docs: Authentication Methods"
@docPath="/docs/auth/index.html" @docPath="/docs/auth/index.html"
@instructions="Click the 'Save' link to save any extra configuration. Saving without filling anything in will use the defaults." @instructions="Click the 'Save' link to save any extra configuration. Saving without filling anything in will use the defaults."
> >
<p> <p>
You can update your new auth method configuration here. You can update your new Auth Method configuration here.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -4,7 +4,7 @@
@docPath="/docs/auth/index.html" @docPath="/docs/auth/index.html"
> >
<p> <p>
Fantastic! Now you're ready to use your new {{mountName}} auth method! Fantastic! Now you're ready to use your new {{mountName}} Auth Method!
</p> </p>
</WizardSection> </WizardSection>
<WizardSection <WizardSection
@@ -12,7 +12,7 @@
@class="wizard-details" @class="wizard-details"
> >
<button type="button" class="button next-feature-step" {{action onReset}}> <button type="button" class="button next-feature-step" {{action onReset}}>
Enable another auth method <ICon @glyph="loop" @size=13 /> Enable another Auth Method <ICon @glyph="loop" @size=13 />
</button> </button>
<button type="button" class="button next-feature-step" {{action onAdvance}}> <button type="button" class="button next-feature-step" {{action onAdvance}}>
{{nextFeature}} <ICon @glyph="chevron-right" @size=10 /> {{nextFeature}} <ICon @glyph="chevron-right" @size=10 />

View File

@@ -1,10 +1,10 @@
<WizardSection <WizardSection
@headerText="Editing Your Auth Method" @headerText="Editing your Auth Method"
@docText="Docs: Authentication Methods" @docText="Docs: Authentication Methods"
@docPath="/docs/auth/index.html" @docPath="/docs/auth/index.html"
@instructions='Click the "View method" link to see its details.' @instructions='Click the "View method" link to see its details.'
> >
<p> <p>
You can update your new auth method configuration here. You can update your new Auth Method configuration here.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -2,9 +2,9 @@
@headerText="Enabling an Auth Method" @headerText="Enabling an Auth Method"
@docText="Docs: Authentication Methods" @docText="Docs: Authentication Methods"
@docPath="/docs/auth/index.html" @docPath="/docs/auth/index.html"
@instructions='Choose an authentication method and click "Next" to get started.' @instructions='Choose an Authentication Method and click "Next" to get started.'
> >
<p> <p>
Controlling who can see your secrets is important. Let's set up a an authentication method for you and your team to use. Don't worry, you can add more methods later. Controlling who can see your secrets is important. Let's set up a an Authentication Method for you and your team to use. Don't worry, you can add more methods later.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -1,10 +1,10 @@
<WizardSection <WizardSection
@headerText="Auth Method List" @headerText="Auth Method list"
@docText="Docs: Authentication Methods" @docText="Docs: Authentication Methods"
@docPath="/docs/auth/index.html" @docPath="/docs/auth/index.html"
@instructions='Click the ellipsis menu for your method and then click "View Configuration" to see its details.' @instructions='Click the ellipsis menu for your method and then click "View configuration" to see its details.'
> >
<p> <p>
Awesome! Now you can see your new auth method in the list. Awesome! Now you can see your new Auth Method in the list.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/secrets/aws/index.html" @docPath="/docs/secrets/aws/index.html"
> >
<p> <p>
The AWS secrets engine generates AWS access credentials dynamically based on IAM policies. This generally makes working with AWS IAM easier, since it does not involve clicking in the web UI. Additionally, the process is codified and mapped to internal auth methods (such as LDAP). The AWS IAM credentials are time-based and are automatically revoked when the Vault lease expires. The AWS Secrets Engine generates AWS access credentials dynamically based on IAM policies. This generally makes working with AWS IAM easier, since it does not involve clicking in the web UI. Additionally, the process is codified and mapped to internal Auth Methods (such as LDAP). The AWS IAM credentials are time-based and are automatically revoked when the Vault lease expires.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/auth/aws.html" @docPath="/docs/auth/aws.html"
> >
<p> <p>
The AWS auth method provides an automated mechanism to retrieve a Vault token for AWS EC2 instances and IAM principals. Unlike most Vault auth methods, this method does not require manual first-deploying, or provisioning security-sensitive credentials (tokens, username/password, client certificates, etc), by operators under many circumstances. The AWS Auth Method provides an automated mechanism to retrieve a Vault token for AWS EC2 instances and IAM principals. Unlike most Vault Auth Methods, this method does not require manual first-deploying, or provisioning security-sensitive credentials (tokens, username/password, client certificates, etc), by operators under many circumstances.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/secrets/azure/index.html" @docPath="/docs/secrets/azure/index.html"
> >
<p> <p>
The Azure secrets engine dynamically generates Azure service principals and role assignments. Vault roles can be mapped to one or more Azure roles, providing a simple, flexible way to manage the permissions granted to generated service principals. The Azure Secrets Engine dynamically generates Azure service principals and role assignments. Vault roles can be mapped to one or more Azure roles, providing a simple, flexible way to manage the permissions granted to generated service principals.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/auth/azure.html" @docPath="/docs/auth/azure.html"
> >
<p> <p>
The Azure auth method allows authentication against Vault using Azure Active Directory credentials. The Azure Auth Method allows authentication against Vault using Azure Active Directory credentials.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/auth/cert.html" @docPath="/docs/auth/cert.html"
> >
<p> <p>
The TLS Certificates auth method allows authentication using SSL/TLS client certificates which are either signed by a CA or self-signed. CA certificates are associated with a role. The TLS Certificates Auth Method allows authentication using SSL/TLS client certificates which are either signed by a CA or self-signed. CA certificates are associated with a role.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -4,6 +4,6 @@
@docPath="/docs/secrets/cubbyhole/index.html" @docPath="/docs/secrets/cubbyhole/index.html"
> >
<p> <p>
The cubbyhole secrets engine is used to store arbitrary secrets within the configured physical storage for Vault namespaced to a token. In cubbyhole, paths are scoped per token. No token can access another token's cubbyhole. When the token expires, its cubbyhole is destroyed. The cubbyhole Secrets Engine is used to store arbitrary secrets within the configured physical storage for Vault namespaced to a token. In cubbyhole, paths are scoped per token. No token can access another token's cubbyhole. When the token expires, its cubbyhole is destroyed.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/secrets/consul/index.html" @docPath="/docs/secrets/consul/index.html"
> >
<p> <p>
The Consul secrets engine generates Consul API tokens dynamically based on Consul ACL policies. The Consul Secrets Engine generates Consul API tokens dynamically based on Consul ACL policies.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/secrets/databases/index.html" @docPath="/docs/secrets/databases/index.html"
> >
<p> <p>
The database secrets engine generates database credentials dynamically based on configured roles. The database Secrets Engine generates database credentials dynamically based on configured roles.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/secrets/gcp/index.html" @docPath="/docs/secrets/gcp/index.html"
> >
<p> <p>
The Google Cloud Vault secrets engine dynamically generates Google Cloud service account keys and OAuth tokens based on IAM policies. This enables users to gain access to Google Cloud resources without needing to create or manage a dedicated service account. The Google Cloud Vault Secrets Engine dynamically generates Google Cloud service account keys and OAuth tokens based on IAM policies. This enables users to gain access to Google Cloud resources without needing to create or manage a dedicated service account.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/auth/gcp.html" @docPath="/docs/auth/gcp.html"
> >
<p> <p>
The GCP auth method allows authentication against Vault using Google credentials. The GCP Auth Method allows authentication against Vault using Google credentials.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/secrets/gcpkms/index.html" @docPath="/docs/secrets/gcpkms/index.html"
> >
<p> <p>
The Google Cloud KMS Vault secrets engine provides encryption and key management via Google Cloud KMS. It supports management of keys, including creation, rotation, and revocation, as well as encrypting and decrypting data with managed keys. This enables management of KMS keys through Vault's policies and IAM system. The Google Cloud KMS Vault Secrets Engine provides encryption and key management via Google Cloud KMS. It supports management of keys, including creation, rotation, and revocation, as well as encrypting and decrypting data with managed keys. This enables management of KMS keys through Vault's policies and IAM system.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/auth/github.html" @docPath="/docs/auth/github.html"
> >
<p> <p>
The Github auth method can be used to authenticate with Vault using a GitHub personal access token. The Github Auth Method can be used to authenticate with Vault using a GitHub personal access token.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/auth/kubernetes.html" @docPath="/docs/auth/kubernetes.html"
> >
<p> <p>
The Kubernetes auth method can be used to authenticate with Vault using a Kubernetes Service Account Token. This method of authentication makes it easy to introduce a Vault token into a Kubernetes Pod. The Kubernetes Auth Method can be used to authenticate with Vault using a Kubernetes Service Account Token. This method of authentication makes it easy to introduce a Vault token into a Kubernetes Pod.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/secrets/kv/index.html" @docPath="/docs/secrets/kv/index.html"
> >
<p> <p>
The kv secrets engine is used to store arbitrary secrets within the configured physical storage for Vault. This backend can be run in one of two modes. It can be a generic Key-Value store that stores one value for a key. Versioning can be enabled and a configurable number of versions for each key will be stored. The KV Secrets Engine is used to store arbitrary secrets within the configured physical storage for Vault. This backend can be run in one of two modes. It can be a generic Key-Value store that stores one value for a key. Versioning can be enabled and a configurable number of versions for each key will be stored.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/auth/ldap.html" @docPath="/docs/auth/ldap.html"
> >
<p> <p>
The LDAP auth method allows authentication using an existing LDAP server and user/password credentials. This allows Vault to be integrated into environments using LDAP without duplicating the user/pass configuration in multiple places. The LDAP Auth Method allows authentication using an existing LDAP server and user/password credentials. This allows Vault to be integrated into environments using LDAP without duplicating the user/pass configuration in multiple places.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/auth/okta.html" @docPath="/docs/auth/okta.html"
> >
<p> <p>
The Okta auth method allows authentication using Okta and user/password credentials. This allows Vault to be integrated into environments using Okta. The Okta Auth Method allows authentication using Okta and user/password credentials. This allows Vault to be integrated into environments using Okta.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/secrets/pki/index.html" @docPath="/docs/secrets/pki/index.html"
> >
<p> <p>
The PKI secrets engine generates dynamic X.509 certificates. With this secrets engine, services can get certificates without going through the usual manual process of generating a private key and CSR, submitting to a CA, and waiting for a verification and signing process to complete. The PKI Secrets Engine generates dynamic X.509 certificates. With this Secrets Engine, services can get certificates without going through the usual manual process of generating a private key and CSR, submitting to a CA, and waiting for a verification and signing process to complete.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/secrets/rabbitmq/index.html" @docPath="/docs/secrets/rabbitmq/index.html"
> >
<p> <p>
The RabbitMQ secrets engine generates user credentials dynamically based on configured permissions and virtual hosts. This means that services that need to access a virtual host no longer need to hardcode credentials. The RabbitMQ Secrets Engine generates user credentials dynamically based on configured permissions and virtual hosts. This means that services that need to access a virtual host no longer need to hardcode credentials.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/auth/radius.html" @docPath="/docs/auth/radius.html"
> >
<p> <p>
The RADIUS auth method allows users to authenticate with Vault using an existing RADIUS server that accepts the PAP authentication scheme. The RADIUS Auth Method allows users to authenticate with Vault using an existing RADIUS server that accepts the PAP authentication scheme.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -1,5 +1,5 @@
<WizardSection <WizardSection
@headerText="Your New Role" @headerText="Your new role"
> >
<p> <p>
With our new role, we can generate a credential that has the same permissions as that role. Click on "Generate Credentials" links at the top of the page. With our new role, we can generate a credential that has the same permissions as that role. Click on "Generate Credentials" links at the top of the page.

View File

@@ -1,27 +1,27 @@
{{#if isSupported}} {{#if isSupported}}
<WizardSection <WizardSection
@headerText={{unless actionText "All set!" "Generate Credential"}} @headerText={{unless actionText "All set!" "Generate Credential"}}
> >
<p> <p>
{{#if actionText}} {{#if actionText}}
Here is your generated credential. As you can see, we can only show the credential once, so you'll want to be sure to save it. If you need another credential in the future, just come back and generate a new one. Here is your generated credential. As you can see, we can only show the credential once, so you'll want to be sure to save it. If you need another credential in the future, just come back and generate a new one.
{{else}} {{else}}
Well done! Well done!
{{/if}} {{/if}}
You're now ready to start using your new {{mountName}} secrets engine. You're now ready to start using your new {{mountName}} Secrets Engine.
</p> </p>
</WizardSection> </WizardSection>
{{else}} {{else}}
<WizardSection <WizardSection
@headerText="Viewing engine configuration" @headerText="Viewing engine configuration"
> >
<p> <p>
Here you can see all the details of your new engine. This can be useful to get information for things like TTL or Seal Wrap settings. Here you can see all the details of your new engine. This can be useful to get information for things like TTL or Seal Wrap settings.
</p> </p>
</WizardSection> </WizardSection>
{{/if}} {{/if}}
<WizardSection <WizardSection
@headerText="Want to start again or move on?" @headerText="Want to start again or move on?"
@class="wizard-details" @class="wizard-details"
> >
{{#if isSupported}} {{#if isSupported}}
@@ -30,9 +30,9 @@
</button> </button>
{{/if}} {{/if}}
<button type="button" class="button next-feature-step" {{action onReset}}> <button type="button" class="button next-feature-step" {{action onReset}}>
Enable another secrets engine <ICon @glyph="loop" @size=13 /> Enable another Secrets Engine <ICon @glyph="loop" @size=13 />
</button> </button>
<button type="button" class="button next-feature-step" {{action onDone}}> <button type="button" class="button next-feature-step" {{action onDone}}>
{{nextFeature}} <ICon @glyph="chevron-right" @size=10 /> {{nextFeature}} <ICon @glyph="chevron-right" @size=10 />
</button> </button>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@instructions='Select an engine and click "Next"' @instructions='Select an engine and click "Next"'
> >
<p> <p>
Vault is all about managing secrets, so let's set up your first secrets engine. You can use a static engine to store your secrets locally in Vault, or connect to a cloud backend with one of the dynamic engines. Vault is all about managing secrets, so let's set up your first Secrets Engine. You can use a static engine to store your secrets locally in Vault, or connect to a cloud backend with one of the dynamic engines.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -1,6 +1,6 @@
<WizardSection <WizardSection
@headerText="Viewing engine configuration" @headerText="Viewing engine configuration"
@instructions='Find the engine in the list and click on "View Configuration" in the menu on the right.' @instructions='Find the engine in the list and click on "View configuration" in the menu on the right.'
> >
<p> <p>
This engine isn't fully supported in the Vault UI yet, but you can view and edit the configuration and use the Vault Browser CLI to interact with the engine just like you would on the command-line. This engine isn't fully supported in the Vault UI yet, but you can view and edit the configuration and use the Vault Browser CLI to interact with the engine just like you would on the command-line.

View File

@@ -5,6 +5,6 @@
@docPath="/docs/secrets/ssh/index.html" @docPath="/docs/secrets/ssh/index.html"
> >
<p> <p>
The Vault SSH secrets engine provides secure authentication and authorization for access to machines via the SSH protocol. The Vault SSH secrets engine helps manage access to machine infrastructure, providing several ways to issue SSH credentials. The Vault SSH Secrets Engine provides secure authentication and authorization for access to machines via the SSH protocol. The Vault SSH Secrets Engine helps manage access to machine infrastructure, providing several ways to issue SSH credentials.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/secrets/totp/index.html" @docPath="/docs/secrets/totp/index.html"
> >
<p> <p>
The TOTP secrets engine generates time-based credentials according to the TOTP standard. The TOTP Secrets Engine generates time-based credentials according to the TOTP standard.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/secrets/transit/index.html" @docPath="/docs/secrets/transit/index.html"
> >
<p> <p>
The transit secrets engine handles cryptographic functions on data in-transit. Vault doesn't store the data sent to the secrets engine. It can also be viewed as "cryptography as a service" or "encryption as a service". The Transit Secrets Engine handles cryptographic functions on data in-transit. Vault doesn't store the data sent to the Secrets Engine. It can also be viewed as "cryptography as a service" or "encryption as a service".
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -5,6 +5,6 @@
@docPath="/docs/auth/userpass.html" @docPath="/docs/auth/userpass.html"
> >
<p> <p>
The Username & Password auth method allows users to authenticate with Vault using a username and password combination. The Username & Password Auth Method allows users to authenticate with Vault using a username and password combination.
</p> </p>
</WizardSection> </WizardSection>

View File

@@ -1,5 +1,5 @@
<div class="field"> <div class="field">
<label for="token" class="is-label">GitHub Token</label> <label for="token" class="is-label">GitHub token</label>
<div class="control"> <div class="control">
{{input {{input
type="password" type="password"

View File

@@ -19,7 +19,7 @@
</div> </div>
<div class="level-item level-left"> <div class="level-item level-left">
<div> <div>
<h4 class="label">Max TTL</h4> <h4 class="label">Maximum TTL</h4>
<span data-test-secret-backend-details="max-ttl"> <span data-test-secret-backend-details="max-ttl">
{{backend.config.max_lease_ttl}} {{backend.config.max_lease_ttl}}
</span> </span>

View File

@@ -1,9 +1,9 @@
<h4 class="title is-5 is-marginless"> <h4 class="title is-5 is-marginless">
Disable replication Disable Replication
</h4> </h4>
<div class="content"> <div class="content">
<p> <p>
Disable {{replicationDisplayMode}} replication entirely on the cluster. Disable {{replicationDisplayMode}} Replication entirely on the cluster.
{{#if model.replicationAttrs.isPrimary}} {{#if model.replicationAttrs.isPrimary}}
Any secondaries will no longer be able to connect. Any secondaries will no longer be able to connect.
{{else if (eq model.replicationAttrs.modeForUrl 'bootstrapping')}} {{else if (eq model.replicationAttrs.modeForUrl 'bootstrapping')}}
@@ -55,12 +55,12 @@
) )
) )
buttonClasses="button is-primary" buttonClasses="button is-primary"
confirmMessage=(concat "Are you sure you want to disable replication on this cluster?") confirmMessage=(concat "Are you sure you want to disable Replication on this cluster?")
confirmButtonText="Disable" confirmButtonText="Disable"
cancelButtonText="Cancel" cancelButtonText="Cancel"
data-test-disable-replication=true data-test-disable-replication=true
}} }}
Disable replication Disable Replication
{{/confirm-action}} {{/confirm-action}}
</div> </div>
</div> </div>

View File

@@ -59,7 +59,7 @@
{{else}} {{else}}
<p class="has-text-grey-dark box is-shadowless is-fullwidth has-slim-padding"> <p class="has-text-grey-dark box is-shadowless is-fullwidth has-slim-padding">
<label for="replication-mode" class="is-label is-block"> <label for="replication-mode" class="is-label is-block">
Type of Replication Type of replication
</label> </label>
In both Performance and Disaster Recovery (DR) Replication, secondaries share the underlying configuration, policies, and supporting secrets as their primary cluster. In both Performance and Disaster Recovery (DR) Replication, secondaries share the underlying configuration, policies, and supporting secrets as their primary cluster.
</p> </p>
@@ -102,7 +102,7 @@
</p> </p>
{{else}} {{else}}
<p class="help has-text-grey-dark"> <p class="help has-text-grey-dark">
Performance replication scales workloads horizontally across clusters to make requests faster. Local secondaries handle read requests but forward writes to the primary to be handled. Performance Replication scales workloads horizontally across clusters to make requests faster. Local secondaries handle read requests but forward writes to the primary to be handled.
</p> </p>
{{/if}} {{/if}}
</div> </div>
@@ -163,7 +163,7 @@
</div> </div>
{{else}} {{else}}
<p> <p>
The token you are using is not authorized to enable primary replication. The token you are using is not authorized to enable primary replication.
</p> </p>
{{/if}} {{/if}}
{{else}} {{else}}
@@ -185,7 +185,7 @@
{{#if showExplanation}} {{#if showExplanation}}
<p> <p>
When running as a DR secondary Vault is read only. When running as a DR secondary Vault is read only.
For this reason, we don't allow other replication modes to operate at the same time. This cluster is also For this reason, we don't allow other Replication modes to operate at the same time. This cluster is also
currently operating as a Performance {{capitalize cluster.performance.modeForUrl}}. currently operating as a Performance {{capitalize cluster.performance.modeForUrl}}.
</p> </p>
{{/if}} {{/if}}
@@ -250,7 +250,7 @@
<div class="field is-grouped box is-fullwidth is-bottomless"> <div class="field is-grouped box is-fullwidth is-bottomless">
<div class="control"> <div class="control">
<button type="submit" class="button is-primary" disabled={{disallowEnable}} data-test-replication-enable=true> <button type="submit" class="button is-primary" disabled={{disallowEnable}} data-test-replication-enable=true>
Enable replication Enable Replication
</button> </button>
</div> </div>
</div> </div>

View File

@@ -16,7 +16,7 @@
@class="is-block" @class="is-block"
@toggleAttr="showOptions" @toggleAttr="showOptions"
@toggleTarget={{this}} @toggleTarget={{this}}
@openLabel="Hide Options" @openLabel="Hide options"
@closedLabel="Options" @closedLabel="Options"
/> />
{{#if showOptions}} {{#if showOptions}}
@@ -77,7 +77,7 @@
<p>Promote the cluster to primary. <p>Promote the cluster to primary.
<AlertInline <AlertInline
@type="warning" @type="warning"
@message="Vault replication is not designed for active-active usage and enabling two primaries should never be done, as it can lead to data loss if they or their secondaries are ever reconnected. @message="Vault Replication is not designed for active-active usage and enabling two primaries should never be done, as it can lead to data loss if they or their secondaries are ever reconnected.
If the cluster has a primary, be sure to demote it before promoting a secondary." If the cluster has a primary, be sure to demote it before promoting a secondary."
/> />
</p> </p>

View File

@@ -19,11 +19,11 @@
</code> </code>
</small> </small>
{{else if (and (eq mode 'performance') (not version.hasPerfReplication))}} {{else if (and (eq mode 'performance') (not version.hasPerfReplication))}}
Learn More Learn more
{{else if auth.currentToken}} {{else if auth.currentToken}}
Enable {{if (eq mode 'performance') 'Performance' 'DR'}} Enable {{if (eq mode 'performance') 'Performance' 'DR'}}
{{else}} {{else}}
Not Enabled Not enabled
{{/if}} {{/if}}
</div> </div>
<div class="level-right"> <div class="level-right">

View File

@@ -34,7 +34,7 @@
{{#if (eq mode 'dr')}} {{#if (eq mode 'dr')}}
DR is designed to protect against catastrophic failure of entire clusters. Secondaries do not forward service requests (until they are elected and become a new primary). DR is designed to protect against catastrophic failure of entire clusters. Secondaries do not forward service requests (until they are elected and become a new primary).
{{else}} {{else}}
Performance replication scales workloads horizontally across clusters to make requests faster. Local secondaries handle read requests but forward writes to the primary to be handled. Performance Replication scales workloads horizontally across clusters to make requests faster. Local secondaries handle read requests but forward writes to the primary to be handled.
{{/if}} {{/if}}
</p> </p>
{{/if}} {{/if}}

View File

@@ -6,7 +6,7 @@
</p> </p>
<div class="field"> <div class="field">
<label for="dr_operation_token" class="is-label"> <label for="dr_operation_token" class="is-label">
DR Operation Token DR Operation token
</label> </label>
<div class="control"> <div class="control">
{{input class="input" id="dr_operation_token" name="dr_operation_token" value=dr_operation_token}} {{input class="input" id="dr_operation_token" name="dr_operation_token" value=dr_operation_token}}
@@ -24,7 +24,7 @@
@class="is-block" @class="is-block"
@toggleAttr="showOptions" @toggleAttr="showOptions"
@toggleTarget={{this}} @toggleTarget={{this}}
@openLabel="Hide Options" @openLabel="Hide options"
@closedLabel="Options" @closedLabel="Options"
/> />
{{#if showOptions}} {{#if showOptions}}

View File

@@ -9,7 +9,7 @@
{{#each model.fields as |attr|}} {{#each model.fields as |attr|}}
{{#if (eq attr.name "policyDocument")}} {{#if (eq attr.name "policyDocument")}}
{{#info-table-row label=(capitalize (or attr.options.label (humanize (dasherize attr.name)))) value=model.policyDocument}} {{#info-table-row label=(capitalize (or attr.options.label (humanize (dasherize attr.name)))) value=model.policyDocument}}
<pre><code class="is-paddingless">{{stringify (jsonify model.policyDocument)}}</code></pre> <pre><code class="is-paddingless">{{stringify (jsonify model.policyDocument)}}</code></pre>
{{/info-table-row}} {{/info-table-row}}
{{else}} {{else}}
{{info-table-row label=(capitalize (or attr.options.label (humanize (dasherize attr.name)))) value=(get model attr.name)}} {{info-table-row label=(capitalize (or attr.options.label (humanize (dasherize attr.name)))) value=(get model attr.name)}}

View File

@@ -13,14 +13,14 @@
{{#if item.canGenerate}} {{#if item.canGenerate}}
<li class="action"> <li class="action">
{{#link-to "vault.cluster.secrets.backend.credentials" item.id (query-params action="issue") data-test-role-pki-link="generate-certificate"}} {{#link-to "vault.cluster.secrets.backend.credentials" item.id (query-params action="issue") data-test-role-pki-link="generate-certificate"}}
Generate Certificate Generate certificate
{{/link-to}} {{/link-to}}
</li> </li>
{{/if}} {{/if}}
{{#if item.canSign}} {{#if item.canSign}}
<li class="action"> <li class="action">
{{#link-to "vault.cluster.secrets.backend.credentials" item.id (query-params action="sign") data-test-role-pki-link="sign-certificate"}} {{#link-to "vault.cluster.secrets.backend.credentials" item.id (query-params action="sign") data-test-role-pki-link="sign-certificate"}}
Sign Certificate Sign certificate
{{/link-to}} {{/link-to}}
</li> </li>
{{/if}} {{/if}}

View File

@@ -3,7 +3,7 @@
<ul> <ul>
{{#link-to "vault.cluster.settings.configure-secret-backend" model.id (query-params tab='') tagName="li"}} {{#link-to "vault.cluster.settings.configure-secret-backend" model.id (query-params tab='') tagName="li"}}
{{#link-to "vault.cluster.settings.configure-secret-backend" model.id (query-params tab='') data-test-aws-link="root-creds"}} {{#link-to "vault.cluster.settings.configure-secret-backend" model.id (query-params tab='') data-test-aws-link="root-creds"}}
Dynamic IAM Root Credentials Dynamic IAM root credentials
{{/link-to}} {{/link-to}}
{{/link-to}} {{/link-to}}
@@ -49,7 +49,7 @@
<div class="field"> <div class="field">
<label for="access" class="is-label"> <label for="access" class="is-label">
Access Key Access key
</label> </label>
<div class="control"> <div class="control">
{{input type="text" id="access" name="access" class="input" autocomplete="off" value=accessKey data-test-aws-input="accessKey"}} {{input type="text" id="access" name="access" class="input" autocomplete="off" value=accessKey data-test-aws-input="accessKey"}}
@@ -58,7 +58,7 @@
<div class="field"> <div class="field">
<label for="secret" class="is-label"> <label for="secret" class="is-label">
Secret Key Secret key
</label> </label>
<div class="control"> <div class="control">
{{input type="password" id="secret" name="secret" class="input" value=secretKey data-test-aws-input="secretKey"}} {{input type="password" id="secret" name="secret" class="input" value=secretKey data-test-aws-input="secretKey"}}
@@ -95,7 +95,7 @@
</div> </div>
<div class="field"> <div class="field">
<label for="iam" class="is-label"> <label for="iam" class="is-label">
IAM Endpoint IAM endpoint
</label> </label>
<div class="control"> <div class="control">
{{input type="text" id="iam" name="iam" class="input" value=iamEndpoint}} {{input type="text" id="iam" name="iam" class="input" value=iamEndpoint}}
@@ -103,7 +103,7 @@
</div> </div>
<div class="field"> <div class="field">
<label for="sts" class="is-label"> <label for="sts" class="is-label">
STS Endpoint STS endpoint
</label> </label>
<div class="control"> <div class="control">
{{input type="text" id="sts" name="sts" class="input" value=stsEndpoint}} {{input type="text" id="sts" name="sts" class="input" value=stsEndpoint}}

View File

@@ -5,7 +5,7 @@
{{#link-to 'vault.cluster.settings.configure-secret-backend.section' section tagName="li" activeClass="is-active"}} {{#link-to 'vault.cluster.settings.configure-secret-backend.section' section tagName="li" activeClass="is-active"}}
{{#link-to 'vault.cluster.settings.configure-secret-backend.section' section}} {{#link-to 'vault.cluster.settings.configure-secret-backend.section' section}}
{{#if (eq section 'cert')}} {{#if (eq section 'cert')}}
CA Certificate CA certificate
{{else if (eq section 'urls')}} {{else if (eq section 'urls')}}
URLs URLs
{{else if (eq section 'crl')}} {{else if (eq section 'crl')}}

View File

@@ -2,7 +2,7 @@
<div class="box is-fullwidth is-sideless is-marginless"> <div class="box is-fullwidth is-sideless is-marginless">
<div class="field"> <div class="field">
<label for="publicKey" class="is-label"> <label for="publicKey" class="is-label">
Public Key Public key
</label> </label>
<div class="control"> <div class="control">
{{textarea {{textarea
@@ -44,7 +44,7 @@
<NamespaceReminder @mode="save" @noun="configuration" /> <NamespaceReminder @mode="save" @noun="configuration" />
<div class="field"> <div class="field">
<label for="privateKey" class="is-label"> <label for="privateKey" class="is-label">
Private Key Private key
</label> </label>
<div class="control"> <div class="control">
{{textarea name="privateKey" id="privateKey" class="input" value=model.privateKey}} {{textarea name="privateKey" id="privateKey" class="input" value=model.privateKey}}
@@ -52,7 +52,7 @@
</div> </div>
<div class="field"> <div class="field">
<label for="publicKey" class="is-label"> <label for="publicKey" class="is-label">
Public Key Public key
</label> </label>
<div class="control"> <div class="control">
{{textarea name="publicKey" id="publicKey" class="input" value=model.publicKey}} {{textarea name="publicKey" id="publicKey" class="input" value=model.publicKey}}
@@ -67,7 +67,7 @@
data-test-ssh-input={{generateSigningKey}} data-test-ssh-input={{generateSigningKey}}
/> />
<label for="generateSigningKey" class="is-label"> <label for="generateSigningKey" class="is-label">
Generate Signing Key Generate signing key
{{#info-tooltip}} {{#info-tooltip}}
Specifies if Vault should generate the signing key pair internally Specifies if Vault should generate the signing key pair internally
{{/info-tooltip}} {{/info-tooltip}}

View File

@@ -4,7 +4,7 @@
@message="A version that has been permanently deleted cannot be restored. You can see other versions of this secret in the History menu." @message="A version that has been permanently deleted cannot be restored. You can see other versions of this secret in the History menu."
> >
<DocLink @path="/docs/secrets/kv/kv-v2.html"> <DocLink @path="/docs/secrets/kv/kv-v2.html">
Learn More Learn more
</DocLink> </DocLink>
</EmptyState> </EmptyState>
{{else if (and isV2 modelForData.deleted)}} {{else if (and isV2 modelForData.deleted)}}
@@ -14,7 +14,7 @@
You can also see other versions of this secret in the History menu." You can also see other versions of this secret in the History menu."
> >
<DocLink @path="/docs/secrets/kv/kv-v2.html"> <DocLink @path="/docs/secrets/kv/kv-v2.html">
Learn More Learn more
</DocLink> </DocLink>
</EmptyState> </EmptyState>
{{else}} {{else}}

View File

@@ -73,7 +73,7 @@
@class="has-text-black has-text-weight-semibold" @class="has-text-black has-text-weight-semibold"
> >
{{if backendModel.isV2KV {{if backendModel.isV2KV
"Create New Version" "Create new version"
"Edit" "Edit"
}} }}
</SecretLink> </SecretLink>
@@ -93,7 +93,7 @@
data-test-v2-kv-delete=item.id data-test-v2-kv-delete=item.id
}} }}
{{if backendModel.isV2KV {{if backendModel.isV2KV
"Permanently Delete" "Permanently delete"
"Delete" "Delete"
}} }}
{{/confirm-action}} {{/confirm-action}}

View File

@@ -48,7 +48,7 @@
<li> <li>
{{#link-to "vault.cluster.replication"}} {{#link-to "vault.cluster.replication"}}
<div class="level is-mobile"> <div class="level is-mobile">
<span class="level-left">Learn More</span> <span class="level-left">Learn more</span>
<ICon @glyph="edition-enterprise" @size="16" @class="level-right" /> <ICon @glyph="edition-enterprise" @size="16" @class="level-right" />
</div> </div>
{{/link-to}} {{/link-to}}
@@ -80,7 +80,7 @@
<li class="action"> <li class="action">
{{#link-to "vault.cluster.license" activeCluster.name invokeAction=onLinkClick}} {{#link-to "vault.cluster.license" activeCluster.name invokeAction=onLinkClick}}
<div class="level is-mobile"> <div class="level is-mobile">
<span class="level-left">See Details</span> <span class="level-left">See details</span>
<ICon @glyph="chevron-right" @size="12" @class="has-text-grey-light level-right" /> <ICon @glyph="chevron-right" @size="12" @class="has-text-grey-light level-right" />
</div> </div>
{{/link-to}} {{/link-to}}
@@ -92,7 +92,7 @@
{{/unless}} {{/unless}}
<nav class="menu"> <nav class="menu">
<div class="menu-label"> <div class="menu-label">
Seal Status Seal status
</div> </div>
<ul class="menu-list"> <ul class="menu-list">
<li class="action"> <li class="action">

View File

@@ -1,7 +1,7 @@
<PageHeader as |p|> <PageHeader as |p|>
<p.levelLeft> <p.levelLeft>
<h1 class="title is-3"> <h1 class="title is-3">
Hash Data Hash data
</h1> </h1>
</p.levelLeft> </p.levelLeft>
</PageHeader> </PageHeader>

View File

@@ -1,7 +1,7 @@
<PageHeader as |p|> <PageHeader as |p|>
<p.levelLeft> <p.levelLeft>
<h1 class="title is-3"> <h1 class="title is-3">
Lookup Token Lookup token
</h1> </h1>
</p.levelLeft> </p.levelLeft>
</PageHeader> </PageHeader>
@@ -43,7 +43,7 @@
<div class="field is-grouped box is-fullwidth is-bottomless"> <div class="field is-grouped box is-fullwidth is-bottomless">
<div class="control"> <div class="control">
<button type="submit" data-test-tools-submit="true" class="button is-primary"> <button type="submit" data-test-tools-submit="true" class="button is-primary">
Lookup Token Lookup token
</button> </button>
</div> </div>
</div> </div>

View File

@@ -1,7 +1,7 @@
<PageHeader as |p|> <PageHeader as |p|>
<p.levelLeft> <p.levelLeft>
<h1 class="title is-3"> <h1 class="title is-3">
Random Bytes Random bytes
</h1> </h1>
</p.levelLeft> </p.levelLeft>
</PageHeader> </PageHeader>

View File

@@ -1,7 +1,7 @@
<PageHeader as |p|> <PageHeader as |p|>
<p.levelLeft> <p.levelLeft>
<h1 class="title is-3"> <h1 class="title is-3">
Rewrap Token Rewrap token
</h1> </h1>
</p.levelLeft> </p.levelLeft>
</PageHeader> </PageHeader>
@@ -59,7 +59,7 @@
<div class="field is-grouped box is-fullwidth is-bottomless"> <div class="field is-grouped box is-fullwidth is-bottomless">
<div class="control"> <div class="control">
<button type="submit" data-test-tools-submit="true" class="button is-primary"> <button type="submit" data-test-tools-submit="true" class="button is-primary">
Rewrap Token Rewrap token
</button> </button>
</div> </div>
</div> </div>

View File

@@ -1,7 +1,7 @@
<PageHeader as |p|> <PageHeader as |p|>
<p.levelLeft> <p.levelLeft>
<h1 class="title is-3"> <h1 class="title is-3">
Unwrap Data Unwrap data
</h1> </h1>
</p.levelLeft> </p.levelLeft>
</PageHeader> </PageHeader>
@@ -84,7 +84,7 @@
<div class="field is-grouped box is-fullwidth is-bottomless"> <div class="field is-grouped box is-fullwidth is-bottomless">
<div class="control"> <div class="control">
<button type="submit" data-test-tools-submit="true" class="button is-primary"> <button type="submit" data-test-tools-submit="true" class="button is-primary">
Unwrap Data Unwrap data
</button> </button>
</div> </div>
</div> </div>

View File

@@ -1,7 +1,7 @@
<PageHeader as |p|> <PageHeader as |p|>
<p.levelLeft> <p.levelLeft>
<h1 class="title is-3"> <h1 class="title is-3">
Wrap Data Wrap data
</h1> </h1>
</p.levelLeft> </p.levelLeft>
</PageHeader> </PageHeader>
@@ -57,7 +57,7 @@
<div class="field is-grouped box is-fullwidth is-bottomless"> <div class="field is-grouped box is-fullwidth is-bottomless">
<div class="control"> <div class="control">
<button type="submit" class="button is-primary" data-test-tools-submit="true" disabled={{buttonDisabled}}> <button type="submit" class="button is-primary" data-test-tools-submit="true" disabled={{buttonDisabled}}>
Wrap Data Wrap data
</button> </button>
</div> </div>
</div> </div>

View File

@@ -3,7 +3,7 @@
<div class="modal-content"> <div class="modal-content">
<h2 class="title upgrade-overlay-title is-2 has-text-white"> <h2 class="title upgrade-overlay-title is-2 has-text-white">
<ICon @glyph="edition-enterprise" aria-hidden="true" @size=32 /> <ICon @glyph="edition-enterprise" aria-hidden="true" @size=32 />
Try Vault Enterprise Free for 30 Days Try Vault Enterprise free for 30 days
</h2> </h2>
<h3 class="title is-5 has-text-white"> <h3 class="title is-5 has-text-white">
Collaborate on secrets management and access Collaborate on secrets management and access
@@ -64,7 +64,7 @@
</div> </div>
<p class="has-text-centered"> <p class="has-text-centered">
<a href="https://hashicorp.com/products/vault/trial?source={{trackingSource}}" class="button is-primary has-icon-right" target="_blank" rel="noreferrer noopener"> <a href="https://hashicorp.com/products/vault/trial?source={{trackingSource}}" class="button is-primary has-icon-right" target="_blank" rel="noreferrer noopener">
Start Trial Start trial
{{i-con glyph="chevron-right"}} {{i-con glyph="chevron-right"}}
</a> </a>
</p> </p>

View File

@@ -28,7 +28,7 @@
{{#if (eq env "development") }} {{#if (eq env "development") }}
<div class="env-banner level development"> <div class="env-banner level development">
<div class="level-item notification has-background-dark has-text-white"> <div class="level-item notification has-background-dark has-text-white">
{{i-con glyph="wand" class="type-icon"}}Local Development {{i-con glyph="wand" class="type-icon"}}Local development
</div> </div>
</div> </div>
{{/if}} {{/if}}

View File

@@ -17,7 +17,7 @@
<form {{action (nav-to-route 'vault.cluster.access.control-group-accessor' model.id) on="submit"}}> <form {{action (nav-to-route 'vault.cluster.access.control-group-accessor' model.id) on="submit"}}>
<div class="box is-sideless is-fullwidth is-marginless"> <div class="box is-sideless is-fullwidth is-marginless">
<p class="has-text-grey is-size-8"> <p class="has-text-grey is-size-8">
Control Groups add additional authorization factors to be required before satisfying a request. If you have a control group accessor, provide it here to view the lookup the authorization progress. Control Groups add additional authorization factors to be required before satisfying a request. If you have a Control Group accessor, provide it here to view the lookup the authorization progress.
</p> </p>
<label for="accessor" class="is-label"> <label for="accessor" class="is-label">
Accessor Accessor

View File

@@ -1,7 +1,7 @@
<PageHeader as |p|> <PageHeader as |p|>
<p.levelLeft> <p.levelLeft>
<h1 class="title is-3"> <h1 class="title is-3">
Add {{lowercase (humanize model.identityType)}} for {{model.canonicalId}} Create {{lowercase (humanize model.identityType)}} for {{model.canonicalId}}
</h1> </h1>
</p.levelLeft> </p.levelLeft>
</PageHeader> </PageHeader>

View File

@@ -51,7 +51,7 @@
Create {{identityType}} Create {{identityType}}
{{/link-to}} {{/link-to}}
<LearnLink @path="/vault/identity-access-management/iam-identity"> <LearnLink @path="/vault/identity-access-management/iam-identity">
Learn More Learn more
</LearnLink> </LearnLink>
</EmptyState> </EmptyState>
{{/if}} {{/if}}

View File

@@ -1,7 +1,7 @@
<PageHeader as |p|> <PageHeader as |p|>
<p.levelLeft> <p.levelLeft>
<h1 class="title is-3"> <h1 class="title is-3">
Add {{model.identityType}} Create {{model.identityType}}
</h1> </h1>
</p.levelLeft> </p.levelLeft>
</PageHeader> </PageHeader>

View File

@@ -122,7 +122,7 @@
Create {{identityType}} Create {{identityType}}
{{/link-to}} {{/link-to}}
<LearnLink @path="/vault/identity-access-management/iam-identity"> <LearnLink @path="/vault/identity-access-management/iam-identity">
Learn More Learn more
</LearnLink> </LearnLink>
</EmptyState> </EmptyState>
{{/if}} {{/if}}

View File

@@ -19,7 +19,7 @@
<p.levelRight> <p.levelRight>
{{#unless (or (and (eq model.identityType "group") (eq model.type "internal")) model.alias)}} {{#unless (or (and (eq model.identityType "group") (eq model.type "internal")) model.alias)}}
{{#link-to "vault.cluster.access.identity.aliases.add" (pluralize model.identityType) model.id class="button has-icon-right is-ghost is-compact" data-test-entity-create-link=true}} {{#link-to "vault.cluster.access.identity.aliases.add" (pluralize model.identityType) model.id class="button has-icon-right is-ghost is-compact" data-test-entity-create-link=true}}
Add alias Create alias
{{i-con glyph="chevron-right" size=11}} {{i-con glyph="chevron-right" size=11}}
{{/link-to}} {{/link-to}}
{{/unless}} {{/unless}}

View File

@@ -1,7 +1,7 @@
<PageHeader as |p|> <PageHeader as |p|>
<p.levelLeft> <p.levelLeft>
<h1 class="title is-3"> <h1 class="title is-3">
Lookup a Lease Lookup a lease
</h1> </h1>
</p.levelLeft> </p.levelLeft>
</PageHeader> </PageHeader>

View File

@@ -54,13 +54,13 @@
<ul class="menu-list"> <ul class="menu-list">
<li> <li>
{{#link-to "vault.cluster.access.method.section" method.id "configuration"}} {{#link-to "vault.cluster.access.method.section" method.id "configuration"}}
View Configuration View configuration
{{/link-to}} {{/link-to}}
</li> </li>
{{#if method.canEdit}} {{#if method.canEdit}}
<li> <li>
{{#link-to "vault.cluster.settings.auth.configure" method.id}} {{#link-to "vault.cluster.settings.auth.configure" method.id}}
Edit Configuration Edit configuration
{{/link-to}} {{/link-to}}
</li> </li>
{{/if}} {{/if}}
@@ -71,7 +71,7 @@
confirmButtonClasses="button is-primary" confirmButtonClasses="button is-primary"
buttonClasses="link is-destroy" buttonClasses="link is-destroy"
onConfirmAction=(perform disableMethod method) onConfirmAction=(perform disableMethod method)
confirmMessage=(concat "Are you sure you want to disable the " method.id " auth method at " method.path "?") confirmMessage=(concat "Are you sure you want to disable the " method.id " Auth Method at " method.path "?")
showConfirm=(get this (concat "shouldDelete-" (dot-to-dash method.id))) showConfirm=(get this (concat "shouldDelete-" (dot-to-dash method.id)))
class=(if (get this (concat "shouldDelete-" (dot-to-dash method.id))) "message is-block is-warning is-outline") class=(if (get this (concat "shouldDelete-" (dot-to-dash method.id))) "message is-block is-warning is-outline")
containerClasses="message-body is-block" containerClasses="message-body is-block"

View File

@@ -10,7 +10,7 @@
</p.top> </p.top>
<p.levelLeft> <p.levelLeft>
<h1 class="title is-3"> <h1 class="title is-3">
Add a namespace Create a Namespace
</h1> </h1>
</p.levelLeft> </p.levelLeft>
</PageHeader> </PageHeader>

View File

@@ -7,7 +7,7 @@
</p.levelLeft> </p.levelLeft>
<p.levelRight> <p.levelRight>
{{#link-to 'vault.cluster.access.namespaces.create' class="button has-icon-right is-ghost is-compact"}} {{#link-to 'vault.cluster.access.namespaces.create' class="button has-icon-right is-ghost is-compact"}}
Create namespace Create a Namespace
<ICon @glyph="chevron-right" @size=11 /> <ICon @glyph="chevron-right" @size=11 />
{{/link-to}} {{/link-to}}
</p.levelRight> </p.levelRight>
@@ -22,7 +22,7 @@
{{#if (contains targetNamespace accessibleNamespaces)}} {{#if (contains targetNamespace accessibleNamespaces)}}
<li class="action"> <li class="action">
{{#link-to "vault.cluster.secrets" (query-params namespace=targetNamespace) class="is-block"}} {{#link-to "vault.cluster.secrets" (query-params namespace=targetNamespace) class="is-block"}}
Switch to namespace Switch to Namespace
{{/link-to}} {{/link-to}}
</li> </li>
{{/if}} {{/if}}

View File

@@ -35,7 +35,7 @@
> >
<div class="message-body"> <div class="message-body">
<h4 class="title is-7 is-marginless"> <h4 class="title is-7 is-marginless">
Initial Root Token Initial root token
</h4> </h4>
<MaskedInput <MaskedInput
@class="is-highlight has-label" @class="is-highlight has-label"
@@ -97,7 +97,7 @@
@class="button is-ghost" @class="button is-ghost"
@stringify={{true}} @stringify={{true}}
> >
<ICon @glyph="download" @size=16 /> Download Keys <ICon @glyph="download" @size=16 /> Download keys
</DownloadButton> </DownloadButton>
</div> </div>
</div> </div>
@@ -129,7 +129,7 @@
for="key-shares" for="key-shares"
class="is-label" class="is-label"
> >
Key Shares Key shares
</label> </label>
<div class="control"> <div class="control">
{{input {{input
@@ -153,7 +153,7 @@
for="key-threshold" for="key-threshold"
class="is-label" class="is-label"
> >
Key Threshold Key threshold
</label> </label>
<div class="control"> <div class="control">
{{input {{input
@@ -172,8 +172,8 @@
</p> </p>
</div> </div>
<ToggleButton <ToggleButton
@openLabel="Encrypt Output with PGP" @openLabel="Encrypt output with PGP"
@closedLabel="Encrypt Output with PGP" @closedLabel="Encrypt output with PGP"
@toggleTarget={{this}} @toggleTarget={{this}}
@toggleAttr="use_pgp" @toggleAttr="use_pgp"
@class="is-block" @class="is-block"
@@ -190,8 +190,8 @@
</div> </div>
{{/if}} {{/if}}
<ToggleButton <ToggleButton
@openLabel="Encrypt Root Token with PGP" @openLabel="Encrypt root token with PGP"
@closedLabel="Encrypt Root Token with PGP" @closedLabel="Encrypt root token with PGP"
@toggleTarget={{this}} @toggleTarget={{this}}
@toggleAttr="use_pgp_for_root" @toggleAttr="use_pgp_for_root"
@class="is-block" @class="is-block"

View File

@@ -9,7 +9,7 @@
</p.top> </p.top>
<p.levelLeft> <p.levelLeft>
<h1 class="title is-3"> <h1 class="title is-3">
Add {{uppercase policyType}} policy Create {{uppercase policyType}} policy
</h1> </h1>
</p.levelLeft> </p.levelLeft>
</PageHeader> </PageHeader>
@@ -94,7 +94,7 @@
class="button is-primary" class="button is-primary"
data-test-policy-save=true data-test-policy-save=true
> >
Create Policy Create policy
</button> </button>
</div> </div>
<div class="control"> <div class="control">

View File

@@ -160,7 +160,7 @@
Create {{uppercase policyType}} policy Create {{uppercase policyType}} policy
{{/link-to}} {{/link-to}}
<LearnLink @path="/vault/getting-started/policies"> <LearnLink @path="/vault/getting-started/policies">
Learn More Learn more
</LearnLink> </LearnLink>
</EmptyState> </EmptyState>
{{/if}} {{/if}}

View File

@@ -4,7 +4,7 @@
<li> <li>
{{#link-to "vault.cluster.policies" policyType data-test-policy-list-link=true}} {{#link-to "vault.cluster.policies" policyType data-test-policy-list-link=true}}
<span class="sep">&#x0002f;</span> <span class="sep">&#x0002f;</span>
{{uppercase policyType}} Policies {{uppercase policyType}} policies
{{/link-to}} {{/link-to}}
</li> </li>
</nav> </nav>

View File

@@ -4,7 +4,7 @@
<li> <li>
{{#link-to "vault.cluster.policies" policyType data-test-policy-list-link=true}} {{#link-to "vault.cluster.policies" policyType data-test-policy-list-link=true}}
<span class="sep">&#x0002f;</span> <span class="sep">&#x0002f;</span>
{{uppercase policyType}} Policies {{uppercase policyType}} policies
{{/link-to}} {{/link-to}}
</li> </li>
</nav> </nav>

View File

@@ -1,7 +1,7 @@
<SplashPage as |Page|> <SplashPage as |Page|>
<Page.header> <Page.header>
<h1 class="title is-4"> <h1 class="title is-4">
Disaster Recovery Secondary is&nbsp;enabled Disaster Recovery secondary is&nbsp;enabled
</h1> </h1>
</Page.header> </Page.header>
<Page.content> <Page.content>
@@ -28,7 +28,7 @@
<AlertBanner <AlertBanner
@type="warning" @type="warning"
@title="Caution" @title="Caution"
@message="Vault replication is not designed for active-active usage and enabling two performance primaries should never be done, as it can lead to data loss if they or their secondaries are ever reconnected." @message="Vault Replication is not designed for active-active usage and enabling two performance primaries should never be done, as it can lead to data loss if they or their secondaries are ever reconnected."
@class="unseal-warning" @class="unseal-warning"
data-test-cluster-status data-test-cluster-status
/> />
@@ -54,7 +54,7 @@
> >
<p> <p>
Generate an Operation Token by entering a portion of the master key. Generate an Operation Token by entering a portion of the master key.
Once all portions are entered, the generated operation token may be used to manage your Seondary Disaster Recovery cluster. Once all portions are entered, the generated operation token may be used to manage your secondary Disaster Recovery cluster.
</p> </p>
</ShamirFlow> </ShamirFlow>
{{/unless}} {{/unless}}

View File

@@ -3,7 +3,7 @@
<h4 class="title is-5"> <h4 class="title is-5">
Generate a secondary token Generate a secondary token
</h4> </h4>
<p>Generate a token to enable {{replicationMode}} replication or change primaries on secondary cluster.</p> <p>Generate a token to enable {{replicationMode}} Replication or change primaries on secondary cluster.</p>
</div> </div>
{{message-error errors=errors}} {{message-error errors=errors}}
{{#if token}} {{#if token}}

View File

@@ -56,7 +56,7 @@
{{/link-to}} {{/link-to}}
{{/if}} {{/if}}
<DocLink @path="/docs/internals/replication.html"> <DocLink @path="/docs/internals/replication.html">
Learn More Learn more
</DocLink> </DocLink>
</EmptyState> </EmptyState>
{{/if}} {{/if}}

Some files were not shown because too many files have changed in this diff Show More