From 0ce70c08bd0d91969db87541468cead03207baeb Mon Sep 17 00:00:00 2001 From: mabashian Date: Thu, 21 Feb 2019 11:37:46 -0500 Subject: [PATCH] Add prompt for extra vars to wfjt --- awx/api/serializers.py | 4 ++-- awx/ui/client/src/templates/prompt/prompt.controller.js | 2 -- awx/ui/client/src/templates/workflows.form.js | 4 ++++ .../workflows/add-workflow/workflow-add.controller.js | 2 ++ .../workflows/edit-workflow/workflow-edit.controller.js | 2 ++ 5 files changed, 10 insertions(+), 4 deletions(-) diff --git a/awx/api/serializers.py b/awx/api/serializers.py index 516491654b..72cfc24cdc 100644 --- a/awx/api/serializers.py +++ b/awx/api/serializers.py @@ -4495,8 +4495,8 @@ class WorkflowJobLaunchSerializer(BaseSerializer): fields = ('ask_inventory_on_launch', 'can_start_without_user_input', 'defaults', 'extra_vars', 'inventory', 'survey_enabled', 'variables_needed_to_start', 'node_templates_missing', 'node_prompts_rejected', - 'workflow_job_template_data', 'survey_enabled') - read_only_fields = ('ask_inventory_on_launch',) + 'workflow_job_template_data', 'survey_enabled', 'ask_variables_on_launch') + read_only_fields = ('ask_inventory_on_launch', 'ask_variables_on_launch') def get_survey_enabled(self, obj): if obj: diff --git a/awx/ui/client/src/templates/prompt/prompt.controller.js b/awx/ui/client/src/templates/prompt/prompt.controller.js index bfd2fb5123..59dd620a80 100644 --- a/awx/ui/client/src/templates/prompt/prompt.controller.js +++ b/awx/ui/client/src/templates/prompt/prompt.controller.js @@ -52,12 +52,10 @@ export default [ 'ProcessErrors', 'CredentialTypeModel', 'TemplatesStrings', .then( (response) => { vm.promptDataClone.prompts.credentials.credentialTypes = {}; vm.promptDataClone.prompts.credentials.credentialTypeOptions = []; - let machineCredTypeId = null; response.data.results.forEach((credentialTypeRow => { vm.promptDataClone.prompts.credentials.credentialTypes[credentialTypeRow.id] = credentialTypeRow.kind; if(credentialTypeRow.kind.match(/^(cloud|net|ssh|vault)$/)) { if(credentialTypeRow.kind === 'ssh') { - machineCredTypeId = credentialTypeRow.id; vm.promptDataClone.prompts.credentials.credentialKind = credentialTypeRow.id.toString(); } vm.promptDataClone.prompts.credentials.credentialTypeOptions.push({ diff --git a/awx/ui/client/src/templates/workflows.form.js b/awx/ui/client/src/templates/workflows.form.js index c0a2418614..abb4c019d8 100644 --- a/awx/ui/client/src/templates/workflows.form.js +++ b/awx/ui/client/src/templates/workflows.form.js @@ -115,6 +115,10 @@ export default ['NotificationsList', 'i18n', function(NotificationsList, i18n) { dataTitle: i18n._('Extra Variables'), dataPlacement: 'right', dataContainer: "body", + subCheckbox: { + variable: 'ask_variables_on_launch', + text: i18n._('Prompt on launch') + }, ngDisabled: '!(workflow_job_template_obj.summary_fields.user_capabilities.edit || canAddWorkflowJobTemplate)' // TODO: get working }, checkbox_group: { diff --git a/awx/ui/client/src/templates/workflows/add-workflow/workflow-add.controller.js b/awx/ui/client/src/templates/workflows/add-workflow/workflow-add.controller.js index 72d02d89e7..af07fe38c4 100644 --- a/awx/ui/client/src/templates/workflows/add-workflow/workflow-add.controller.js +++ b/awx/ui/client/src/templates/workflows/add-workflow/workflow-add.controller.js @@ -69,7 +69,9 @@ export default [ data[fld] = $scope[fld]; } } + data.ask_inventory_on_launch = Boolean($scope.ask_inventory_on_launch); + data.ask_variables_on_launch = Boolean($scope.ask_variables_on_launch); data.extra_vars = ToJSON($scope.parseType, $scope.variables, true); diff --git a/awx/ui/client/src/templates/workflows/edit-workflow/workflow-edit.controller.js b/awx/ui/client/src/templates/workflows/edit-workflow/workflow-edit.controller.js index 174ffffeef..bd8324842c 100644 --- a/awx/ui/client/src/templates/workflows/edit-workflow/workflow-edit.controller.js +++ b/awx/ui/client/src/templates/workflows/edit-workflow/workflow-edit.controller.js @@ -56,6 +56,7 @@ export default [ $scope.parseType = 'yaml'; $scope.includeWorkflowMaker = false; $scope.ask_inventory_on_launch = workflowJobTemplateData.ask_inventory_on_launch; + $scope.ask_variables_on_launch = (workflowJobTemplateData.ask_variables_on_launch) ? true : false; if (Inventory){ $scope.inventory = Inventory.id; @@ -92,6 +93,7 @@ export default [ } data.ask_inventory_on_launch = Boolean($scope.ask_inventory_on_launch); + data.ask_variables_on_launch = Boolean($scope.ask_variables_on_launch); data.extra_vars = ToJSON($scope.parseType, $scope.variables, true);