mirror of
https://github.com/status-im/consul.git
synced 2025-01-14 07:44:50 +00:00
f65f001675
In some circumstances a consul 1.4 client could be running in an un-upgraded 1.3 or lower cluster. Currently this gives a 500 error on the new ACL token endpoint. Here we catch this specific 500 error/message and set the users AccessorID to null. Elsewhere in the frontend we use this fact (AccessorID being null) to decide whether to present the legacy or the new ACL UI to the user. Also: - Re-adds in most of the old style ACL acceptance tests, now that we are keeping the old style UI - Restricts code editors to HCL only mode for all `Rules` editing (legacy/'half legacy'/new style) - Adds a [Stop using] button to the old style ACL rows so its possible to logout. - Updates copy and documentation links for the upgrade notices
99 lines
4.2 KiB
Handlebars
99 lines
4.2 KiB
Handlebars
{{#app-view class="acl list" loading=isLoading}}
|
|
{{#block-slot 'notification' as |status type|}}
|
|
{{partial 'dc/acls/notifications'}}
|
|
{{/block-slot}}
|
|
{{#block-slot 'header'}}
|
|
<h1>
|
|
ACL Tokens
|
|
</h1>
|
|
<label for="toolbar-toggle"></label>
|
|
{{/block-slot}}
|
|
{{#block-slot 'actions'}}
|
|
<a data-test-create href="{{href-to 'dc.acls.create'}}" class="type-create">Create</a>
|
|
{{/block-slot}}
|
|
{{#block-slot 'toolbar'}}
|
|
{{#if (gt items.length 0) }}
|
|
{{acl-filter filters=typeFilters search=filters.s type=filters.type onchange=(action 'filter')}}
|
|
{{/if}}
|
|
{{/block-slot}}
|
|
{{#block-slot 'content'}}
|
|
{{#if (gt filtered.length 0)}}
|
|
{{#tabular-collection
|
|
items=(sort-by 'Name:asc' filtered) as |item index|
|
|
}}
|
|
{{#block-slot 'header'}}
|
|
<th>Name</th>
|
|
<th>Type</th>
|
|
{{/block-slot}}
|
|
{{#block-slot 'row'}}
|
|
<td data-test-acl="{{item.Name}}">
|
|
<a href={{href-to 'dc.acls.edit' item.ID}}>{{item.Name}}</a>
|
|
</td>
|
|
<td>
|
|
{{#if (eq item.Type 'management')}}
|
|
<strong>{{item.Type}}</strong>
|
|
{{else}}
|
|
<span>{{item.Type}}</span>
|
|
{{/if}}
|
|
</td>
|
|
{{/block-slot}}
|
|
{{#block-slot 'actions' as |index change checked|}}
|
|
{{#confirmation-dialog confirming=false index=index}}
|
|
{{#block-slot 'action' as |confirm|}}
|
|
{{#action-group index=index onchange=(action change) checked=(if (eq checked index) 'checked')}}
|
|
<ul>
|
|
<li>
|
|
<a data-test-edit href={{href-to 'dc.acls.edit' item.ID}}>Edit</a>
|
|
</li>
|
|
{{#if (eq item.ID token.SecretID) }}
|
|
<li>
|
|
<a data-test-logout onclick={{queue (action confirm 'logout' item) (action change)}}>Stop using</a>
|
|
</li>
|
|
{{else}}
|
|
|
|
<li>
|
|
<a data-test-use onclick={{queue (action confirm 'use' item) (action change)}}>Use</a>
|
|
</li>
|
|
{{/if}}
|
|
<li>
|
|
<a data-test-clone onclick={{action 'sendClone' item}}>Clone</a>
|
|
</li>
|
|
{{# if (not-eq item.ID 'anonymous') }}
|
|
<li>
|
|
<a data-test-delete onclick={{action confirm 'delete' item}}>Delete</a>
|
|
</li>
|
|
{{/if}}
|
|
</ul>
|
|
{{/action-group}}
|
|
{{/block-slot}}
|
|
{{#block-slot 'dialog' as |execute cancel message name|}}
|
|
<p>
|
|
{{#if (eq name 'delete')}}
|
|
Are you sure you want to delete this ACL token?
|
|
{{else if (eq name 'logout')}}
|
|
Are you sure you want to stop using this ACL token? This will log you out.
|
|
{{ else if (eq name 'use')}}
|
|
Are you sure you want to use this ACL token?
|
|
{{/if}}
|
|
</p>
|
|
<button type="button" class="type-delete" {{action execute}}>
|
|
{{#if (eq name 'delete')}}
|
|
Confirm Delete
|
|
{{else if (eq name 'logout')}}
|
|
Confirm Logout
|
|
{{ else if (eq name 'use')}}
|
|
Confirm Use
|
|
{{/if}}
|
|
</button>
|
|
<button type="button" class="type-cancel" {{action cancel}}>Cancel</button>
|
|
{{/block-slot}}
|
|
{{/confirmation-dialog}}
|
|
{{/block-slot}}
|
|
{{/tabular-collection}}
|
|
{{else}}
|
|
<p>
|
|
There are no ACLs.
|
|
</p>
|
|
{{/if}}
|
|
{{/block-slot}}
|
|
{{/app-view}} |