Description of problem: Importing the puppet classes from a smart proxy per environment generates an action permission error: [crash] root@li-lc-1578:~# curl -K /opt/hoici/etc/sat6/curl-hoici.conf "-HContent-Type: application/json" "-d{\"per_page\":9999}" -XPOST https://localhost/api/v2/smart_proxies/1/environments/29/import_puppetclasses { "error": {"message":"ERF42-5531 [Foreman::Exception]: unknown permission for api/v2/environments#import_puppetclasses"} } 2016-05-20 15:44:38 [app] [I] Started POST "/api/v2/smart_proxies/1/environments/29/import_puppetclasses" for 127.0.0.1 at 2016-05-20 15:44:38 +0000 2016-05-20 15:44:38 [app] [I] Processing by Api::V2::EnvironmentsController#import_puppetclasses as JSON 2016-05-20 15:44:38 [app] [I] Parameters: {"per_page"=>9999, "apiv"=>"v2", "smart_proxy_id"=>"1", "id"=>"29", "environmen t"=>{}} 2016-05-20 15:44:38 [app] [I] Authorized user hoici(hoici ) 2016-05-20 15:44:38 [app] [W] Action failed | Foreman::Exception: ERF42-5531 [Foreman::Exception]: unknown permission for api/v2/environments#import_puppetclasses | /usr/share/foreman/app/controllers/api/base_controller.rb:271:in `action_permission' | /usr/share/foreman/app/controllers/api/base_controller.rb:295:in `parent_resource_details' | /usr/share/foreman/app/controllers/api/base_controller.rb:220:in `find_nested_object' | /usr/share/foreman/app/controllers/api/base_controller.rb:214:in `find_optional_nested_object' | /opt/rh/rh-ror41/root/usr/share/gems/gems/activesupport-4.1.5/lib/active_support/callbacks.rb:424:in `block in make_lamb da' Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. API call to POST /api/smart_proxies/:smart_proxy_id/environments/:id/import_puppetclasses Import puppet classes from puppet Capsule for an environment 2. 3. Actual results: Error Expected results: Success Additional info:
Created redmine issue http://projects.theforeman.org/issues/15225 from this bug
Moving to POST since upstream bug http://projects.theforeman.org/issues/15225 has been closed
~]# curl --insecure -X POST -d {\"per_page\":9999} -u admin:changeme -H "Content-Type:application/json" https://localhost/api/v2/smart_proxies/1/environments/1/import_puppetclasses { "message": "Successfully updated environment and puppetclasses from the on-disk puppet installation", "results": {"name":"production","actions":["new"],"new_puppetclasses":["access_insights_client","stdlib","stdlib::stages","foreman_scap_client","foreman_scap_client::params"]} } VERIFIED With sat62-snap(GA)-15.2 (beta2)
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2016:1501