From 2a1e504d5de74edeec353689e0c94d2e58ce90d2 Mon Sep 17 00:00:00 2001 From: Randall Morey Date: Fri, 2 Oct 2020 14:50:35 -0400 Subject: [PATCH] =?UTF-8?q?feat:=20=F0=9F=8E=B8=20add=20session=20fields?= =?UTF-8?q?=20to=20targets?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- addons/api/addon/generated/models/target.js | 12 ++++++ .../api/tests/unit/serializers/target-test.js | 4 +- ui/core/app/components/form/target/index.hbs | 38 +++++++++++++++++++ ui/core/mirage/factories/target.js | 5 +++ ui/core/mirage/generated/factories/target.js | 2 + ui/core/translations/form/en-us.yaml | 6 +++ 6 files changed, 66 insertions(+), 1 deletion(-) diff --git a/addons/api/addon/generated/models/target.js b/addons/api/addon/generated/models/target.js index 38b831966..55c83d18c 100644 --- a/addons/api/addon/generated/models/target.js +++ b/addons/api/addon/generated/models/target.js @@ -22,6 +22,18 @@ export default class GeneratedTargetModel extends BaseModel { }) description; + @attr('number', { + description: '', + defaultValue: 28800 + }) + session_max_seconds; + + @attr('number', { + description: '', + defaultValue: 1 + }) + session_connection_limit; + @attr('date', { description: 'The time this resource was created\nOutput only.', readOnly: true, diff --git a/addons/api/tests/unit/serializers/target-test.js b/addons/api/tests/unit/serializers/target-test.js index 07d5b3c21..d8e4a58fb 100644 --- a/addons/api/tests/unit/serializers/target-test.js +++ b/addons/api/tests/unit/serializers/target-test.js @@ -20,7 +20,7 @@ module('Unit | Serializer | target', function (hooks) { type: 'org', }, version: 1, - type: 'tcp', + type: 'tcp' }); const snapshot = record._createSnapshot(); snapshot.adapterOptions = {}; @@ -31,6 +31,8 @@ module('Unit | Serializer | target', function (hooks) { version: 1, type: 'tcp', scope_id: 'org_1', + session_max_seconds: 28800, + session_connection_limit: 1, attributes: { default_port: null, }, diff --git a/ui/core/app/components/form/target/index.hbs b/ui/core/app/components/form/target/index.hbs index e2f80fdde..20627adef 100644 --- a/ui/core/app/components/form/target/index.hbs +++ b/ui/core/app/components/form/target/index.hbs @@ -47,6 +47,44 @@ {{/if}} + + {{#if @model.errors.session_max_seconds}} + + {{#each @model.errors.session_max_seconds as |error|}} + {{error.message}} + {{/each}} + + {{/if}} + + + + {{#if @model.errors.session_connection_limit}} + + {{#each @model.errors.session_connection_limit as |error|}} + {{error.message}} + {{/each}} + + {{/if}} + + {{!-- TODO this is a type-specific field --}} random.arrayElement([-1, random.number()]), + /** * Generates attributes fields by type. */ diff --git a/ui/core/mirage/generated/factories/target.js b/ui/core/mirage/generated/factories/target.js index 24915d9da..5ce21adeb 100644 --- a/ui/core/mirage/generated/factories/target.js +++ b/ui/core/mirage/generated/factories/target.js @@ -8,6 +8,8 @@ export default Factory.extend({ type: 'tcp', name: () => random.words(), + session_max_seconds: () => random.number(), + session_connection_limit: () => random.number(), description: () => random.words(), created_time: () => date.recent(), updated_time: () => date.recent(), diff --git a/ui/core/translations/form/en-us.yaml b/ui/core/translations/form/en-us.yaml index 7bbf5c7bc..09f562a66 100644 --- a/ui/core/translations/form/en-us.yaml +++ b/ui/core/translations/form/en-us.yaml @@ -35,3 +35,9 @@ started: label: Started status: label: Status +session_max_seconds: + label: Maximum Duration (in seconds) + help: The maximum duration of a session. +session_connection_limit: + label: Maximum Connections + help: The maximum number of connections allowed per session. For unlimited, specify "-1".