Skip to content

Commit

Permalink
Merge pull request #1493 from h-kataria/ansible_playbook_verbosity
Browse files Browse the repository at this point in the history
Added Verbosity drop down on both Provisioning & Retirement tabs
(cherry picked from commit af2c4aa)

https://bugzilla.redhat.com/show_bug.cgi?id=1460809
  • Loading branch information
Dan Clarizio authored and simaishi committed Jun 12, 2017
1 parent a63c05d commit c04a63c
Show file tree
Hide file tree
Showing 6 changed files with 98 additions and 9 deletions.
Expand Up @@ -23,6 +23,7 @@ ManageIQ.angular.app.controller('catalogItemFormController', ['$scope', 'catalog
provisioning_value: '',
provisioning_variables: {},
provisioning_become_enabled: false,
provisioning_verbosity: '0',
provisioning_editMode: false,
retirement_repository_id: '',
retirement_playbook_id: '',
Expand All @@ -35,7 +36,9 @@ ManageIQ.angular.app.controller('catalogItemFormController', ['$scope', 'catalog
retirement_variables: {},
retirement_editMode: false,
retirement_become_enabled: false,
retirement_verbosity: '0',
};
getVerbosityTypes();
getRemoveResourcesTypes();
vm.provisioning_cloud_type = '';
vm.retirement_cloud_type = '';
Expand Down Expand Up @@ -70,6 +73,17 @@ ManageIQ.angular.app.controller('catalogItemFormController', ['$scope', 'catalog
}
};

var getVerbosityTypes = function() {
vm['verbosity_types'] = {
"0": "0 (Normal)",
"1": "1 (Verbose)",
"2": "2 (More Verbose)",
"3": "3 (Debug)",
"4": "4 (Connection Debug)",
"5": "5 (WinRM Debug)"
};
}

var getRemoveResourcesTypes = function () {
if (angular.isUndefined(vm.catalogItemModel.retirement_repository_id) || vm.catalogItemModel.retirement_repository_id === '') {
vm.catalogItemModel.retirement_remove_resources = 'yes_without_playbook';
Expand Down Expand Up @@ -120,6 +134,13 @@ ManageIQ.angular.app.controller('catalogItemFormController', ['$scope', 'catalog
} else {
vm.catalogItemModel.provisioning_become_enabled = configData.provision.become_enabled;
}

if (configData.provision.verbosity === undefined) {
vm.catalogItemModel.provisioning_verbosity = '0';
} else {
vm.catalogItemModel.provisioning_verbosity = configData.provision.verbosity;
}

setExtraVars('provisioning_variables', configData.provision.extra_vars);

if (typeof configData.retirement.repository_id !== 'undefined') {
Expand All @@ -134,6 +155,13 @@ ManageIQ.angular.app.controller('catalogItemFormController', ['$scope', 'catalog
} else {
vm.catalogItemModel.retirement_become_enabled = configData.retirement.become_enabled;
}

if (configData.retirement.verbosity === undefined) {
vm.catalogItemModel.retirement_verbosity = '0';
} else {
vm.catalogItemModel.retirement_verbosity = configData.retirement.verbosity;
}

vm.catalogItemModel.retirement_network_credential_id = configData.retirement.network_credential_id;
vm.catalogItemModel.retirement_cloud_credential_id = setIfDefined(configData.retirement.cloud_credential_id);
vm.catalogItemModel.retirement_inventory = configData.retirement.hosts;
Expand Down Expand Up @@ -214,6 +242,7 @@ ManageIQ.angular.app.controller('catalogItemFormController', ['$scope', 'catalog
playbook_id: configData.provisioning_playbook_id,
credential_id: configData.provisioning_machine_credential_id,
hosts: configData.provisioning_inventory,
verbosity: configData.provisioning_verbosity,
extra_vars: formatExtraVars(configData.provisioning_variables)
}
}
Expand All @@ -231,7 +260,8 @@ ManageIQ.angular.app.controller('catalogItemFormController', ['$scope', 'catalog
catalog_item['config_info']['provision']['new_dialog_name'] = configData.provisioning_dialog_name;

catalog_item['config_info']['retirement'] = {
remove_resources: configData.retirement_remove_resources
remove_resources: configData.retirement_remove_resources,
verbosity: configData.retirement_verbosity
}

var retirement = catalog_item['config_info']['retirement'];
Expand Down Expand Up @@ -541,6 +571,7 @@ ManageIQ.angular.app.controller('catalogItemFormController', ['$scope', 'catalog
vm.catalogItemModel.retirement_cloud_credential_id = vm.catalogItemModel.provisioning_cloud_credential_id;
vm.catalogItemModel.retirement_inventory = vm.catalogItemModel.provisioning_inventory;
vm.catalogItemModel.retirement_become_enabled = vm.catalogItemModel.provisioning_become_enabled;
vm.catalogItemModel.retirement_verbosity = vm.catalogItemModel.provisioning_verbosity;
vm.catalogItemModel.retirement_key = '';
vm.catalogItemModel.retirement_value = '';
vm.catalogItemModel.retirement_variables = angular.copy(vm.catalogItemModel.provisioning_variables);
Expand Down
16 changes: 16 additions & 0 deletions app/controllers/catalog_controller.rb
Expand Up @@ -845,6 +845,20 @@ def remove_resources_display(remove_resources)
end
helper_method :remove_resources_display

def verbosity_display(verbosity)
verbosity ||= "0"
verbosity_hsh = {
"0" => "0 (Normal)",
"1" => "1 (Verbose)",
"2" => "2 (More Verbose)",
"3" => "3 (Debug)",
"4" => "4 (Connection Debug)",
"5" => "5 (WinRM Debug)"
}
verbosity_hsh[verbosity.to_s]
end
helper_method :verbosity_display

def features
[{:role => "svc_catalog_accord",
:role_any => true,
Expand Down Expand Up @@ -1801,6 +1815,7 @@ def fetch_playbook_details
playbook_details[:provisioning][:network_credential] = fetch_name_from_object(ManageIQ::Providers::EmbeddedAnsible::AutomationManager::NetworkCredential, provision[:network_credential_id]) if provision[:network_credential_id]
playbook_details[:provisioning][:cloud_credential] = fetch_name_from_object(ManageIQ::Providers::EmbeddedAnsible::AutomationManager::CloudCredential, provision[:cloud_credential_id]) if provision[:cloud_credential_id]
fetch_dialog(playbook_details, provision[:dialog_id], :provisioning)
playbook_details[:provisioning][:verbosity] = provision[:verbosity]
playbook_details[:provisioning][:become_enabled] = provision[:become_enabled] == true ? _('Yes') : _('No')

if @record.config_info[:retirement]
Expand All @@ -1814,6 +1829,7 @@ def fetch_playbook_details
playbook_details[:retirement][:network_credential] = fetch_name_from_object(ManageIQ::Providers::EmbeddedAnsible::AutomationManager::NetworkCredential, retirement[:network_credential_id]) if retirement[:network_credential_id]
playbook_details[:retirement][:cloud_credential] = fetch_name_from_object(ManageIQ::Providers::EmbeddedAnsible::AutomationManager::CloudCredential, retirement[:cloud_credential_id]) if retirement[:cloud_credential_id]
end
playbook_details[:retirement][:verbosity] = retirement[:verbosity]
playbook_details[:retirement][:become_enabled] = retirement[:become_enabled] == true ? _('Yes') : _('No')
end
playbook_details
Expand Down
10 changes: 10 additions & 0 deletions app/views/catalog/_sandt_tree_show.html.haml
Expand Up @@ -236,6 +236,11 @@
= _('Escalate Privilege')
.col-md-9
= h(provisioning[:become_enabled])
.form-group
%label.col-md-3.control-label
= _('Verbosity')
.col-md-9
= h(verbosity_display(provisioning[:verbosity]))
.col-md-12.col-lg-6
.form-horizontal.static
.form-group
Expand Down Expand Up @@ -315,6 +320,11 @@
= _('Remove Resources')
.col-md-9
= h(remove_resources_display(retirement[:remove_resources]))
.form-group
%label.col-md-3.control-label
= _('Verbosity')
.col-md-9
= h(verbosity_display(retirement[:verbosity]))
.col-md-12.col-lg-6
.form-horizontal.static
.form-group
Expand Down
10 changes: 10 additions & 0 deletions app/views/layouts/angular/_ansible_form_options_angular.html.haml
Expand Up @@ -119,6 +119,16 @@
"switch-on-text" => _("Yes"),
"switch-off-text" => _("No"),
"checkchange" => ""}
.form-group
%label.col-md-3.control-label
= _('Verbosity')
.col-md-9
%select{"ng-model" => "vm.catalogItemModel.#{prefix}_verbosity",
"name" => "#{prefix}_verbosity",
'ng-options' => 'v as k for (v, k) in vm.verbosity_types',
'pf-select' => true}

- if prefix == "retirement"
.form-group
%label.col-md-3.control-label{"for" => "catalog_id"}
Expand Down
36 changes: 28 additions & 8 deletions spec/controllers/catalog_controller_spec.rb
Expand Up @@ -767,14 +767,16 @@
:credential_id => auth.id,
:repository_id => repository.id,
:playbook_id => playbook.id,
:dialog_id => dialog.id
:dialog_id => dialog.id,
:verbosity => 4
},
:retirement => {
:new_dialog_name => 'test_dialog',
:hosts => 'many',
:credential_id => auth.id,
:repository_id => repository.id,
:playbook_id => playbook.id
:playbook_id => playbook.id,
:verbosity => 0
}
}
}
Expand All @@ -788,14 +790,16 @@
:machine_credential => auth.name,
:dialog => "Some Label",
:dialog_id => dialog.id,
:become_enabled => "No"
:become_enabled => "No",
:verbosity => 4
},
:retirement => {
:remove_resources => nil,
:repository => repository.name,
:playbook => playbook.name,
:machine_credential => auth.name,
:become_enabled => "No"
:become_enabled => "No",
:verbosity => 0
}
}
expect(playbook_details).to eq(st_details)
Expand All @@ -813,14 +817,16 @@
:credential_id => auth.id,
:repository_id => 1,
:playbook_id => playbook.id,
:dialog_id => 2
:dialog_id => 2,
:verbosity => 4
},
:retirement => {
:new_dialog_name => 'test_dialog',
:hosts => 'many',
:credential_id => auth.id,
:repository_id => repository.id,
:playbook_id => 2
:playbook_id => 2,
:verbosity => 0
}
}
}
Expand All @@ -832,17 +838,31 @@
:repository => nil,
:playbook => playbook.name,
:machine_credential => auth.name,
:become_enabled => "No"
:become_enabled => "No",
:verbosity => 4
},
:retirement => {
:remove_resources => nil,
:repository => repository.name,
:playbook => nil,
:machine_credential => auth.name,
:become_enabled => "No"
:become_enabled => "No",
:verbosity => 0
}
}
expect(playbook_details).to eq(st_details)
end
end

context "#verbosity_display" do
it "returns readable display text for Verbosity field" do
verbosity = controller.send(:verbosity_display, '2')
expect(verbosity).to eq('2 (More Verbose)')
end

it "returns readable display text for Verbosity field" do
verbosity = controller.send(:verbosity_display, nil)
expect(verbosity).to eq('0 (Normal)')
end
end
end
Expand Up @@ -29,6 +29,7 @@ describe('catalogItemFormController', function() {
playbook_id: 10000000000493,
credential_id: 10000000000090,
hosts: 'localhost',
verbosity: '0',
extra_vars: {
'var1': {'default': 'default_val1'},
'var2': {'default': 'default_val2'}
Expand All @@ -38,6 +39,7 @@ describe('catalogItemFormController', function() {
},
retirement: {
remove_resources: 'yes_without_playbook',
verbosity: '0',
}
}
};
Expand Down

0 comments on commit c04a63c

Please sign in to comment.