Cleanup worker filter translations (#2621)

* refactor: 💡 clean-up worker filter translations
This commit is contained in:
Lisbet Alvarez authored and GitHub committed 2024-12-12 16:06:38 -08:00
1 parent 5e7b74a7ed
commit 6d2f1dcbbf
18 files changed
+74 -122

No files matched your search

@@ -63,3 +63,5 @@ narrow-results: Narrow results
overflow-options: Overflow Options
show-errors: Show Errors
hide-errors: Hide Errors
edit-worker-filter: Edit Worker Filter
add-worker-filter: Add Worker Filter
+21 -20
View File
@@ -44,6 +44,8 @@ titles:
not-set: Not set
year: '{numberOfYears, plural, =1 {# year} other {# years}}'
days: '{days, plural, =1 {# day} other {# days}}'
workers: Workers
no-worker-filter: No worker filter added
descriptions:
empty-set: There are no items to display yet. You may be able to add items or try back later.
cluster-url-initialization: To get started, please enter your cluster URL
@@ -134,26 +136,25 @@ settings:
cache-daemon: There may be a problem with the cache daemon
client-agent: There may be a problem with the client agent
worker-filter-generator:
title: Filter generator
description: Choose what you want to format into a filter.
link: Learn more about formatting a worker filter.
toggle:
title: Show filter generator
description: The generator will automatically generate a pre-formatted filter for you. You can copy the result to the editor above.
filter-generator:
title: Filter generator
description: Choose what you want to format into a filter.
link: Learn more about formatting a worker filter.
input-values:
title: Input values
description: Next, input what you want to format.
formatted-result:
title: Formatted result
description: Copy and paste this into the editor above.
label: Generated result
tag:
label: Tag
helper: Format a worker tag
name:
label: Name
helper: Format a worker name
operator:
matches: matches
contains: contains
input-values:
title: Input values
description: Next, input what you want to format.
formatted-result:
title: Formatted result
description: Copy and paste this into the editor above.
label: Generated result
tag:
label: Tag
helper: Format a worker tag
name:
label: Name
helper: Format a worker name
operator:
matches: matches
contains: contains
+2
View File
@@ -183,3 +183,5 @@ created:
other_fields:
label: Other Fields
help: This information is provided by the server and cannot be edited in Boundary
worker_filter:
label: Worker Filter
+1 -18
View File
@@ -239,7 +239,6 @@ host-catalog:
label: Client/Application ID
help: The client (application) ID of an Azure service principal that Boundary will use to authenticate and discover hosts from Azure.
worker_filter:
label: Worker Filter
help: Insert a worker filter in order to route requests to the correct worker.
host-set:
title: Host Set
@@ -501,7 +500,6 @@ storage-bucket:
label: Secret access key
help: The secret access key generated by your storage provider for the IAM user to use with this storage bucket. We will not show this data after it is saved, but you can replace it.
worker_filter:
label: Worker filter
help: Filters to the worker(s) that can handle requests for this storage bucket.
disable_credential_rotation:
label: Disable credential rotation
@@ -782,11 +780,9 @@ target:
title: Add Injected Application Credential Sources
description: Select injected Application credential sources to assign to this target.
workers:
title: Workers
description: You can customize how your workers route traffic to this target by setting up a filter that matches specific worker tags. If your target is in a private network, we recommend setting up an egress filter to specify a worker inside the network so that Boundary can access the host. Ingress and egress filters are allowed to select the same worker.
messages:
none:
title: No worker filter added
description: You haven't added an {type} worker filter yet.
diagram:
client: Client
@@ -812,14 +808,10 @@ target:
title: Edit Ingress Worker Filter
description: Specify workers Boundary should use to start the route to this target.
worker-filter:
title: Worker filter
description: The worker filter format for this target.
accordion-label:
egress-workers: Egress workers
ingress-workers: Ingress workers
actions:
edit-worker-filter: Edit worker filter
add-worker-filter: Add worker filter
credential-store:
title: Credential Store
title_plural: Credential Stores
@@ -830,19 +822,14 @@ credential-store:
titles:
new: New Credential Store
worker-filter:
title: Worker Filter
description: The worker filter format for this credential store.
description: A filter used to control which PKI workers can handle Vault requests, allowing the use of private Vault instances with Boundary.
messages:
none:
title: No worker filter added
description: You haven't added a worker filter yet.
edit:
title: Edit Worker Filter
description: Specify workers that have access to the credential store.
actions:
add: Add Worker Filter
delete: Delete Credential Store
edit: Edit Worker Filter
types:
vault: Vault
static: Static
@@ -878,9 +865,6 @@ credential-store:
help: A PEM-encoded private key matching the client certificate from Client Certificate.
client_certificate_key_hmac:
label: Client Certificate Key HMAC
worker_filter:
label: Worker Filter
help: A filter used to control which PKI workers can handle Vault requests, allowing the use of private Vault instances with Boundary.
credential-library:
title: Credential Library
title_plural: Credential Libraries
@@ -1014,7 +998,6 @@ managed-group:
help: The list of groups that this Managed Group belongs to.
worker:
title: Worker
title_plural: Workers
titles:
new: New PKI Worker
description: Workers are the server components that perform the session handling.
@@ -21,7 +21,7 @@
{{#if (and (feature-flag 'vault-worker-filter') @model.isVault)}}
<dd.Interactive
@route='scopes.scope.credential-stores.credential-store.edit-worker-filter'
@text={{t 'resources.credential-store.actions.edit'}}
@text={{t 'actions.edit-worker-filter'}}
/>
{{/if}}
{{#if (can 'delete model' @model)}}
@@ -12,7 +12,7 @@
<nav.link
@route='scopes.scope.credential-stores.credential-store.worker-filter'
>
{{t 'resources.credential-store.worker-filter.title'}}
{{t 'form.worker_filter.label'}}
</nav.link>
{{/if}}
{{#if (can 'navigate model' @model collection='credential-libraries')}}
@@ -360,9 +360,7 @@
disabled={{form.disabled}}
as |F|
>
<F.Label>
{{t 'resources.host-catalog.form.worker_filter.label'}}
</F.Label>
<F.Label>{{t 'form.worker_filter.label'}}</F.Label>
<F.HelperText>
{{t 'resources.host-catalog.form.worker_filter.help'}}
<Hds::Link::Inline @href={{doc-url 'worker.create-tags'}}>
@@ -464,9 +464,7 @@
@isRequired={{true}}
as |F|
>
<F.Legend id={{labelId}}>{{t
'resources.storage-bucket.form.worker_filter.label'
}}</F.Legend>
<F.Legend id={{labelId}}>{{t 'form.worker_filter.label'}}</F.Legend>
<F.HelperText id={{helpId}}>
{{t 'resources.storage-bucket.form.worker_filter.help'}}
<Hds::Link::Inline @href={{doc-url 'storage-bucket.worker-filter'}}>
@@ -323,9 +323,7 @@
@isRequired={{true}}
as |F|
>
<F.Legend id={{labelId}}>{{t
'resources.storage-bucket.form.worker_filter.label'
}}</F.Legend>
<F.Legend id={{labelId}}>{{t 'form.worker_filter.label'}}</F.Legend>
<F.HelperText {{helpId}}>
{{t 'resources.storage-bucket.form.worker_filter.help'}}
<Hds::Link::Inline @href={{doc-url 'storage-bucket.worker-filter'}}>
@@ -8,7 +8,7 @@
{{t 'titles.details'}}
</nav.link>
<nav.link @route='scopes.scope.targets.target.workers'>
{{t 'resources.target.workers.title'}}
{{t 'titles.workers'}}
</nav.link>
<nav.link @route='scopes.scope.targets.target.host-sources'>
{{t 'resources.target.host-source.title_plural'}}
@@ -51,15 +51,15 @@
{{on 'change' this.setGeneratorType}}
as |G|
>
<G.Legend>{{t 'worker-filter-generator.filter-generator.title'}}</G.Legend>
<G.Legend>{{t 'worker-filter-generator.title'}}</G.Legend>
<G.HelperText>
{{t 'worker-filter-generator.filter-generator.description'}}
{{t 'worker-filter-generator.description'}}
<br />
<Hds::Link::Inline
@href={{doc-url 'worker-filters-format'}}
@color='secondary'
>
{{t 'worker-filter-generator.filter-generator.link'}}
{{t 'worker-filter-generator.link'}}
</Hds::Link::Inline>
</G.HelperText>
<G.RadioField
@@ -67,24 +67,16 @@
checked={{eq this.selectedGeneratorType this.generatorTagType}}
as |F|
>
<F.Label>{{t
'worker-filter-generator.filter-generator.tag.label'
}}</F.Label>
<F.HelperText>{{t
'worker-filter-generator.filter-generator.tag.helper'
}}</F.HelperText>
<F.Label>{{t 'worker-filter-generator.tag.label'}}</F.Label>
<F.HelperText>{{t 'worker-filter-generator.tag.helper'}}</F.HelperText>
</G.RadioField>
<G.RadioField
@value={{this.generatorNameType}}
checked={{eq this.selectedGeneratorType this.generatorNameType}}
as |F|
>
<F.Label>{{t
'worker-filter-generator.filter-generator.name.label'
}}</F.Label>
<F.HelperText>{{t
'worker-filter-generator.filter-generator.name.helper'
}}</F.HelperText>
<F.Label>{{t 'worker-filter-generator.name.label'}}</F.Label>
<F.HelperText>{{t 'worker-filter-generator.name.helper'}}</F.HelperText>
</G.RadioField>
</Hds::Form::Radio::Group>
@@ -96,10 +88,10 @@
as |F|
>
<F.Legend id={{labelId}}>{{t
'worker-filter-generator.filter-generator.input-values.title'
'worker-filter-generator.input-values.title'
}}</F.Legend>
<F.HelperText id={{helpId}}>{{t
'worker-filter-generator.filter-generator.input-values.description'
'worker-filter-generator.input-values.description'
}}</F.HelperText>
<F.Control>
{{#if (eq this.selectedGeneratorType this.generatorTagType)}}
@@ -133,12 +125,7 @@
{{#if (eq operator '==')}}
{{operator}}
{{else}}
{{t
(concat
'worker-filter-generator.filter-generator.operator.'
operator
)
}}
{{t (concat 'worker-filter-generator.operator.' operator)}}
{{/if}}
</option>
{{/each}}
@@ -169,14 +156,14 @@
as |F|
>
<F.Legend id={{labelId}}>{{t
'worker-filter-generator.filter-generator.formatted-result.title'
'worker-filter-generator.formatted-result.title'
}}</F.Legend>
<F.HelperText id={{helpId}}>{{t
'worker-filter-generator.filter-generator.formatted-result.description'
'worker-filter-generator.formatted-result.description'
}}</F.HelperText>
<F.Control>
<Hds::Text::Body @tag='p' @weight='semibold'>{{t
'worker-filter-generator.filter-generator.formatted-result.label'
'worker-filter-generator.formatted-result.label'
}}</Hds::Text::Body>
<div class='generated-results-container'>
<Hds::Form::TextInput::Base
+1 -1
View File
@@ -83,7 +83,7 @@
}}
<nav.link @route='scopes.scope.workers'>
<Rose::Icon @name='flight-icons/svg/cpu-16' @size='medium' />
{{t 'resources.worker.title_plural'}}
{{t 'titles.workers'}}
</nav.link>
{{/if}}
</Rose::Nav::Sidebar>
@@ -3,11 +3,9 @@
SPDX-License-Identifier: BUSL-1.1
}}
{{page-title
(t 'resources.credential-store.worker-filter.messages.edit.title')
}}
{{page-title (t 'actions.edit-worker-filter')}}
<Breadcrumbs::Item
@text={{t 'resources.credential-store.worker-filter.messages.edit.title'}}
@text={{t 'actions.edit-worker-filter'}}
@route='scopes.scope.credential-stores.credential-store.edit-worker-filter'
/>
@@ -18,7 +16,7 @@
<page.header>
<Hds::Text::Display @tag='h2' @size='300' class='h2'>
{{t 'resources.credential-store.worker-filter.messages.edit.title'}}
{{t 'actions.edit-worker-filter'}}
<DocLink @doc='worker-filters-format' @iconSize='large' />
</Hds::Text::Display>
<Hds::Text::Body @tag='p' @size='300'>
@@ -3,9 +3,9 @@
SPDX-License-Identifier: BUSL-1.1
}}
{{page-title (t 'resources.credential-store.worker-filter.title')}}
{{page-title (t 'form.worker_filter.label')}}
<Breadcrumbs::Item
@text={{t 'resources.credential-store.worker-filter.title'}}
@text={{t 'form.worker_filter.label'}}
@route='scopes.scope.credential-stores.credential-store.worker-filter'
/>
@@ -38,9 +38,7 @@
@hasCopyButton={{true}}
as |CB|
>
<CB.Title>
{{t 'resources.credential-store.worker-filter.title'}}
</CB.Title>
<CB.Title>{{t 'form.worker_filter.label'}}</CB.Title>
<CB.Description>
{{t 'resources.credential-store.worker-filter.description'}}
</CB.Description>
@@ -48,11 +46,7 @@
{{else}}
<Rose::Layout::Centered>
<Hds::ApplicationState as |A|>
<A.Header
@title={{t
'resources.credential-store.worker-filter.messages.none.title'
}}
/>
<A.Header @title={{t 'titles.no-worker-filter'}} />
<A.Body
@text={{t
'resources.credential-store.worker-filter.messages.none.description'
@@ -61,7 +55,7 @@
<A.Footer as |F|>
<F.LinkStandalone
@icon='plus-circle'
@text={{t 'resources.credential-store.actions.add'}}
@text={{t 'actions.add-worker-filter'}}
@route='scopes.scope.credential-stores.credential-store.edit-worker-filter'
/>
</A.Footer>
@@ -3,9 +3,9 @@
SPDX-License-Identifier: BUSL-1.1
}}
{{page-title (t 'resources.target.workers.title')}}
{{page-title (t 'titles.workers')}}
<Breadcrumbs::Item
@text={{t 'resources.target.workers.title'}}
@text={{t 'titles.workers'}}
@route='scopes.scope.targets.target.workers'
/>
@@ -55,8 +55,8 @@
@text={{t
(if
@model.ingress_worker_filter
'resources.target.workers.actions.edit-worker-filter'
'resources.target.workers.actions.add-worker-filter'
'actions.edit-worker-filter'
'actions.add-worker-filter'
)
}}
@route='scopes.scope.targets.target.edit-ingress-worker-filter'
@@ -72,18 +72,14 @@
@value={{@model.ingress_worker_filter}}
as |CB|
>
<CB.Title>{{t
'resources.target.workers.worker-filter.title'
}}</CB.Title>
<CB.Title>{{t 'form.worker_filter.label'}}</CB.Title>
<CB.Description>{{t
'resources.target.workers.worker-filter.description'
}}</CB.Description>
</Hds::CodeBlock>
{{else}}
<Hds::ApplicationState as |A|>
<A.Header
@title={{t 'resources.target.workers.messages.none.title'}}
/>
<A.Header @title={{t 'titles.no-worker-filter'}} />
<A.Body
@text={{t
'resources.target.workers.messages.none.description'
@@ -110,8 +106,8 @@
@text={{t
(if
@model.egress_worker_filter
'resources.target.workers.actions.edit-worker-filter'
'resources.target.workers.actions.add-worker-filter'
'actions.edit-worker-filter'
'actions.add-worker-filter'
)
}}
@route='scopes.scope.targets.target.edit-egress-worker-filter'
@@ -127,18 +123,14 @@
@value={{@model.egress_worker_filter}}
as |CB|
>
<CB.Title>{{t
'resources.target.workers.worker-filter.title'
}}</CB.Title>
<CB.Title>{{t 'form.worker_filter.label'}}</CB.Title>
<CB.Description>{{t
'resources.target.workers.worker-filter.description'
}}</CB.Description>
</Hds::CodeBlock>
{{else}}
<Hds::ApplicationState as |A|>
<A.Header
@title={{t 'resources.target.workers.messages.none.title'}}
/>
<A.Header @title={{t 'titles.no-worker-filter'}} />
<A.Body
@text={{t
'resources.target.workers.messages.none.description'
@@ -3,10 +3,7 @@
SPDX-License-Identifier: BUSL-1.1
}}
{{page-title (t 'resources.worker.title_plural')}}
<Breadcrumbs::Item
@text={{t 'resources.worker.title_plural'}}
@route='scopes.scope.workers'
/>
{{page-title (t 'titles.workers')}}
<Breadcrumbs::Item @text={{t 'titles.workers'}} @route='scopes.scope.workers' />
{{outlet}}
@@ -11,7 +11,7 @@
<page.header>
<h2>
{{t 'resources.worker.title_plural'}}
{{t 'titles.workers'}}
<DocLink @doc='worker' @iconSize='large' />
</h2>
</page.header>
@@ -218,7 +218,7 @@
'descriptions.neither-list-nor-create'
)
)
resource=(t 'resources.worker.title_plural')
resource=(t 'titles.workers')
}}
/>
{{#if
@@ -14,6 +14,7 @@ module('Acceptance | targets | workers', function (hooks) {
setupApplicationTest(hooks);
setupMirage(hooks);
let intl;
let featuresService;
let featureEdition;
@@ -52,6 +53,7 @@ module('Acceptance | targets | workers', function (hooks) {
};
hooks.beforeEach(async function () {
intl = this.owner.lookup('service:intl');
featuresService = this.owner.lookup('service:features');
featureEdition = this.owner.lookup('service:featureEdition');
@@ -258,10 +260,10 @@ module('Acceptance | targets | workers', function (hooks) {
assert
.dom(ACCORDION_DROPDOWN_TEXT_SELECTOR('egress'))
.hasText('Add worker filter');
.hasText(intl.t('actions.add-worker-filter'));
assert
.dom(ACCORDION_DROPDOWN_TEXT_SELECTOR('ingress'))
.hasText('Add worker filter');
.hasText(intl.t('actions.add-worker-filter'));
});
test('user will see "Edit worker filter" if filter is set', async function (assert) {
@@ -272,10 +274,10 @@ module('Acceptance | targets | workers', function (hooks) {
assert
.dom(ACCORDION_DROPDOWN_TEXT_SELECTOR('egress'))
.hasText('Edit worker filter');
.hasText(intl.t('actions.edit-worker-filter'));
assert
.dom(ACCORDION_DROPDOWN_TEXT_SELECTOR('ingress'))
.hasText('Edit worker filter');
.hasText(intl.t('actions.edit-worker-filter'));
});
test('user can cancel changes to egress worker filter in a target', async function (assert) {