Bug 1439145 - [Ansible Embedded] - Unable to edit the repository
Summary: [Ansible Embedded] - Unable to edit the repository
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat CloudForms Management Engine
Classification: Red Hat
Component: Providers
Version: 5.8.0
Hardware: x86_64
OS: Linux
high
medium
Target Milestone: GA
: 5.9.0
Assignee: James Wong
QA Contact: Pavol Kotvan
URL:
Whiteboard: ansible:repo
: 1439780 (view as bug list)
Depends On:
Blocks: 1443091
TreeView+ depends on / blocked
 
Reported: 2017-04-05 10:38 UTC by Neha Chugh
Modified: 2018-03-14 10:08 UTC (History)
13 users (show)

Fixed In Version: 5.9.0.1
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1443091 (view as bug list)
Environment:
Last Closed: 2018-03-06 15:57:21 UTC
Category: ---
Cloudforms Team: Ansible
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Neha Chugh 2017-04-05 10:38:57 UTC
Description of problem:
Unable to edit the changes in Existing Ansible Repository.
Version-Release number of selected component (if applicable):
5.8.0
How reproducible:
Always

Steps to Reproduce:
1. Navigate to Automation -> Ansible -> Repository
2. Select any existing category and choose "edit repository" from configuration
3. After saving the changes, it has been observed the new changes are not reflected.

Actual results:
It does not reflect new changes.

Expected results:
Changes should be reflected.

Additional info:

Comment 3 Fabien Dupont 2017-04-06 14:55:09 UTC
I have the same issue and the evm.log shows:

[----] I, [2017-04-06T16:52:22.758064 #15940:a33130]  INFO -- : MIQ(ManageIQ::Providers::EmbeddedAnsible::Provider#with_provider_connection) Connecting through ManageIQ::Providers::EmbeddedAnsible::Provider: [Embedded Ansible]
[----] E, [2017-04-06T16:52:23.100716 #15940:a33130] ERROR -- : MIQ(MiqQueue#deliver) Message id: [45000000043029], Error: [undefined method `authentication_id=' for #<AnsibleTowerClient::Project:0x0000000f879e98>]
[----] E, [2017-04-06T16:52:23.113259 #15940:a33130] ERROR -- : [NoMethodError]: undefined method `authentication_id=' for #<AnsibleTowerClient::Project:0x0000000f879e98>  Method:[rescue in deliver]
[----] E, [2017-04-06T16:52:23.113368 #15940:a33130] ERROR -- : /opt/rh/cfme-gemset/gems/ansible_tower_client-0.10.0/lib/ansible_tower_client/base_model.rb:88:in `block in update_attributes!'
/opt/rh/cfme-gemset/gems/ansible_tower_client-0.10.0/lib/ansible_tower_client/base_model.rb:84:in `each'
/opt/rh/cfme-gemset/gems/ansible_tower_client-0.10.0/lib/ansible_tower_client/base_model.rb:84:in `update_attributes!'
/var/www/miq/vmdb/app/models/manageiq/providers/ansible_tower/shared/automation_manager/configuration_script_source.rb:56:in `block in update_in_provider'
/var/www/miq/vmdb/app/models/provider.rb:49:in `with_provider_connection'
/var/www/miq/vmdb/app/models/manageiq/providers/ansible_tower/shared/automation_manager.rb:5:in `with_provider_connection'
/var/www/miq/vmdb/app/models/manageiq/providers/ansible_tower/shared/automation_manager/configuration_script_source.rb:55:in `update_in_provider'
/var/www/miq/vmdb/app/models/miq_queue.rb:347:in `block in deliver'
/opt/rh/rh-ruby23/root/usr/share/ruby/timeout.rb:91:in `block in timeout'
/opt/rh/rh-ruby23/root/usr/share/ruby/timeout.rb:33:in `block in catch'
/opt/rh/rh-ruby23/root/usr/share/ruby/timeout.rb:33:in `catch'
/opt/rh/rh-ruby23/root/usr/share/ruby/timeout.rb:33:in `catch'
/opt/rh/rh-ruby23/root/usr/share/ruby/timeout.rb:106:in `timeout'
/var/www/miq/vmdb/app/models/miq_queue.rb:343:in `deliver'
/var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:107:in `deliver_queue_message'
/var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:135:in `deliver_message'
/var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:153:in `block in do_work'
/var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:147:in `loop'
/var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:147:in `do_work'
/var/www/miq/vmdb/app/models/miq_worker/runner.rb:334:in `block in do_work_loop'
/var/www/miq/vmdb/app/models/miq_worker/runner.rb:331:in `loop'
/var/www/miq/vmdb/app/models/miq_worker/runner.rb:331:in `do_work_loop'
/var/www/miq/vmdb/app/models/miq_worker/runner.rb:153:in `run'
/var/www/miq/vmdb/app/models/miq_worker/runner.rb:128:in `start'
/var/www/miq/vmdb/app/models/miq_worker/runner.rb:21:in `start_worker'
/var/www/miq/vmdb/app/models/miq_worker.rb:339:in `block in start_runner'
/opt/rh/cfme-gemset/gems/nakayoshi_fork-0.0.3/lib/nakayoshi_fork.rb:24:in `fork'
/opt/rh/cfme-gemset/gems/nakayoshi_fork-0.0.3/lib/nakayoshi_fork.rb:24:in `fork'
/var/www/miq/vmdb/app/models/miq_worker.rb:337:in `start_runner'
/var/www/miq/vmdb/app/models/miq_worker.rb:348:in `start'
/var/www/miq/vmdb/app/models/miq_worker.rb:266:in `start_worker'
/var/www/miq/vmdb/app/models/miq_worker.rb:150:in `block in sync_workers'
/var/www/miq/vmdb/app/models/miq_worker.rb:150:in `times'
/var/www/miq/vmdb/app/models/miq_worker.rb:150:in `sync_workers'
/var/www/miq/vmdb/app/models/miq_server/worker_management/monitor.rb:53:in `block in sync_workers'
/var/www/miq/vmdb/app/models/miq_server/worker_management/monitor.rb:50:in `each'
/var/www/miq/vmdb/app/models/miq_server/worker_management/monitor.rb:50:in `sync_workers'
/var/www/miq/vmdb/app/models/miq_server.rb:160:in `start'
/var/www/miq/vmdb/app/models/miq_server.rb:251:in `start'
/var/www/miq/vmdb/lib/workers/evm_server.rb:65:in `start'
/var/www/miq/vmdb/lib/workers/evm_server.rb:91:in `start'
/var/www/miq/vmdb/lib/workers/bin/evm_server.rb:4:in `<main>'
[----] I, [2017-04-06T16:52:23.114103 #15940:a33130]  INFO -- : MIQ(MiqQueue#delivered) Message id: [45000000043029], State: [error], Delivered in [0.460155655] seconds
[----] I, [2017-04-06T16:52:23.117008 #15940:a33130]  INFO -- : MIQ(MiqQueue#m_callback) Message id: [45000000043029], Invoking Callback with args: ["Finished", "error", "undefined method `authentication_id=' for #<AnsibleTowerClient::Project:0x0000000f879e98>", "nil"]
[----] I, [2017-04-06T16:52:23.117279 #15940:a33130]  INFO -- : MIQ(MiqTask#update_status) Task: [45000000000026] [Finished] [Error] [undefined method `authentication_id=' for #<AnsibleTowerClient::Project:0x0000000f879e98>]

Comment 4 James Wong 2017-04-06 15:13:14 UTC
UI is sending an unexpected parameter in the update: 'authentication_id'. And it is being complained by Ansible_tower_client.

Assigning to UI team.


PS: Neha, I believe the update was successful because this faulting line in base_model.rb is after we have invoked Tower side successfully.  You can trigger a MIQ/CF refresh to confirm that. Currently, UI team is working to add a 'refresh' button for manual triggering the refresh. So you can't do that in UI. However, you have 2 other ways to trigger the refresh
1. by adding another credential
2. or using rails console and run: EmsRefresh.refresh(ManageIQ::Providers::EmbeddedAnsible::AutomationManager.first)

Comment 6 Neha Chugh 2017-04-10 05:55:53 UTC
Hello James,

Yes, by Refreshing via Rails Console, it reflects the new changes but the same is not happening via UI. 

Will look forward for the update from UI team.

Regards,
Neha Chugh

Comment 7 Adam Grare 2017-04-13 18:46:34 UTC
James can you look at where the invalid parameter is coming from?

Comment 9 James Wong 2017-04-17 16:20:40 UTC
*** Bug 1439780 has been marked as a duplicate of this bug. ***

Comment 10 James Wong 2017-04-17 18:36:08 UTC
PR merged.

Comment 11 CFME Bot 2017-04-17 18:36:33 UTC
New commit detected on ManageIQ/manageiq/master:
https://github.com/ManageIQ/manageiq/commit/f0672587e8229f603d0945d45b214d54df9210c5

commit f0672587e8229f603d0945d45b214d54df9210c5
Author:     James Wong <jwong>
AuthorDate: Mon Apr 3 12:28:16 2017 -0400
Commit:     James Wong <jwong>
CommitDate: Mon Apr 17 11:47:36 2017 -0400

    Create/update Tower project with scm_credential
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1439145

 .../automation_manager/configuration_script_source.rb     |  6 ++++++
 .../automation_manager/configuration_script_source.rb     | 15 +++++++++++++++
 2 files changed, 21 insertions(+)


Note You need to log in before you can comment on or make changes to this bug.