ui: Ensure we show a special readonly page for intentions (#11767)

This commit is contained in:
John Cowen 2021-12-13 15:02:36 +00:00 committed by GitHub
parent 4734d0989c
commit 470fce1e07
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 40 additions and 3 deletions

3
.changelog/11767.txt Normal file
View File

@ -0,0 +1,3 @@
```release-note:bug
ui: Ensure we show a readonly designed page for readonly intentions
```

View File

@ -56,7 +56,10 @@ as |api|>
</BlockSlot> </BlockSlot>
<BlockSlot @name="form"> <BlockSlot @name="form">
{{#let api.data as |item|}} {{#let
api.data
(not (can 'write intention' item=api.data))
as |item readonly|}}
{{#if (not readonly)}} {{#if (not readonly)}}
{{#let (changeset-get item 'Action') as |newAction|}} {{#let (changeset-get item 'Action') as |newAction|}}
@ -193,6 +196,7 @@ as |api|>
</div> </div>
</form> </form>
{{else}} {{else}}
{{#if item.IsManagedByCRD}} {{#if item.IsManagedByCRD}}
<Notice <Notice
class="crd" class="crd"
@ -215,8 +219,10 @@ as |api|>
</notice.Footer> </notice.Footer>
</Notice> </Notice>
{{/if}} {{/if}}
<Consul::Intention::View <Consul::Intention::View
@item={{item}} @item={{item}}
data-test-readonly
/> />
{{/if}} {{/if}}
{{/let}} {{/let}}

View File

@ -1,4 +1,7 @@
<div class="consul-intention-view"> <div
class="consul-intention-view"
...attributes
>
<div class="definition-table"> <div class="definition-table">
<dl> <dl>

View File

@ -81,7 +81,7 @@ ${fake.helpers.randomize([
], ],
`:``} `:``}
"Precedence": ${fake.random.number({min: 1, max: 100})}, "Precedence": ${fake.random.number({min: 1, max: 100})},
${ !legacy && fake.random.number({min: 1, max: 10}) > 2 ? ` ${ (!legacy || source[1] === "external-source") && fake.random.number({min: 1, max: 10}) > 2 ? `
"Meta": { "Meta": {
"external-source": "${fake.helpers.randomize(['kubernetes', 'consul-api-gateway'])}" "external-source": "${fake.helpers.randomize(['kubernetes', 'consul-api-gateway'])}"
}, },

View File

@ -0,0 +1,15 @@
@setupApplicationTest
Feature: dc / intentions / read-only
Scenario: Viewing a readonly intention
Given 1 datacenter model with the value "dc1"
And 1 intention model from yaml:
---
Meta:
external-source: kubernetes
---
When I visit the intention page for yaml
---
dc: dc1
intention: default:external-source:web:default:external-source:db
---
Then I see the "[data-test-readonly]" element

View File

@ -0,0 +1,10 @@
import steps from '../../steps';
// step definitions that are shared between features should be moved to the
// tests/acceptance/steps/steps.js file
export default function(assert) {
return steps(assert).then('I should find a file', function() {
assert.ok(true, this.step);
});
}