mirror of
https://github.com/ansible/awx.git
synced 2024-11-01 08:21:15 +03:00
Actually fix extra vars on edit schedule. This commit takes into account survey question answers which need to get pulled out of extra vars and displayed in the prompt.
This commit is contained in:
parent
8aec4ed72e
commit
6c98e6c3a0
@ -243,6 +243,15 @@ function($filter, $state, $stateParams, Wait, $scope, moment,
|
||||
|
||||
let jobTemplate = new JobTemplate();
|
||||
|
||||
const codeMirrorExtraVars = () => {
|
||||
ParseTypeChange({
|
||||
scope: $scope,
|
||||
variable: 'extraVars',
|
||||
parse_variable: 'parseType',
|
||||
field_id: 'SchedulerForm-extraVars'
|
||||
});
|
||||
};
|
||||
|
||||
Rest.setUrl(scheduleResolve.related.credentials);
|
||||
|
||||
$q.all([jobTemplate.optionsLaunch(ParentObject.id), jobTemplate.getLaunch(ParentObject.id), Rest.get()])
|
||||
@ -312,21 +321,10 @@ function($filter, $state, $stateParams, Wait, $scope, moment,
|
||||
|
||||
prompts.credentials.value = defaultCredsWithoutOverrides.concat(scheduleCredentials);
|
||||
|
||||
if (launchConf.ask_variables_on_launch) {
|
||||
// the extra vars codemirror is ONLY shown if the
|
||||
// schedule is for a JT and the JT has
|
||||
// ask_variables_on_launch = true.
|
||||
$scope.noVars = false;
|
||||
ParseTypeChange({
|
||||
scope: $scope,
|
||||
variable: 'extraVars',
|
||||
parse_variable: 'parseType',
|
||||
field_id: 'SchedulerForm-extraVars',
|
||||
readOnly: !$scope.schedule_obj.summary_fields.user_capabilities.edit
|
||||
});
|
||||
} else {
|
||||
$scope.noVars = true;
|
||||
}
|
||||
// the extra vars codemirror is ONLY shown if the
|
||||
// schedule is for a JT and the JT has
|
||||
// ask_variables_on_launch = true
|
||||
$scope.noVars = !launchConf.ask_variables_on_launch;
|
||||
|
||||
if (!launchConf.survey_enabled &&
|
||||
!launchConf.ask_inventory_on_launch &&
|
||||
@ -343,6 +341,10 @@ function($filter, $state, $stateParams, Wait, $scope, moment,
|
||||
launchConf.passwords_needed_to_start.length === 0 &&
|
||||
launchConf.variables_needed_to_start.length === 0) {
|
||||
$scope.showPromptButton = false;
|
||||
|
||||
if (launchConf.ask_variables_on_launch) {
|
||||
codeMirrorExtraVars();
|
||||
}
|
||||
} else {
|
||||
$scope.showPromptButton = true;
|
||||
|
||||
@ -366,6 +368,10 @@ function($filter, $state, $stateParams, Wait, $scope, moment,
|
||||
|
||||
$scope.missingSurveyValue = processed.missingSurveyValue;
|
||||
|
||||
$scope.extraVars = (processed.extra_data === '' || _.isEmpty(processed.extra_data)) ? '---' : '---\n' + jsyaml.safeDump(processed.extra_data);
|
||||
|
||||
codeMirrorExtraVars();
|
||||
|
||||
$scope.promptData = {
|
||||
launchConf: launchConf,
|
||||
launchOptions: launchOptions,
|
||||
@ -387,6 +393,7 @@ function($filter, $state, $stateParams, Wait, $scope, moment,
|
||||
watchForPromptChanges();
|
||||
});
|
||||
} else {
|
||||
codeMirrorExtraVars();
|
||||
$scope.promptData = {
|
||||
launchConf: launchConf,
|
||||
launchOptions: launchOptions,
|
||||
|
Loading…
Reference in New Issue
Block a user