Revision 8076e753
Added by Ondřej Pražák over 8 years ago
app/controllers/api/v1/lookup_keys_controller.rb | ||
---|---|---|
param :id, :identifier, :required => true
|
||
|
||
def destroy
|
||
process_response @lookup_key.destroy
|
||
if @lookup_key.type == "PuppetclassLookupKey"
|
||
render_error 'unprocessable_entity', :status => :unprocessable_entity
|
||
else
|
||
process_response @lookup_key.destroy
|
||
end
|
||
end
|
||
end
|
||
end
|
app/controllers/api/v2/smart_class_parameters_controller.rb | ||
---|---|---|
render 'api/v2/smart_class_parameters/show'
|
||
end
|
||
|
||
def destroy
|
||
@smart_class_parameter.destroy
|
||
render 'api/v2/smart_class_parameters/destroy'
|
||
end
|
||
|
||
# overwrite Api::BaseController
|
||
def resource_class
|
||
LookupKey
|
app/views/puppetclass_lookup_keys/index.html.erb | ||
---|---|---|
<th><%= sort :key, :as => _("Parameter") %></th>
|
||
<th><%= sort :puppetclass, :as => _("Puppetclass") %></th>
|
||
<th><%= sort :values_count, :as => _('Number of values'), :default => "DESC" %></th>
|
||
<th></th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
... | ... | |
<% puppet_class = lookup_key.param_class %>
|
||
<td><%= link_to_if_authorized trunc_with_tooltip(puppet_class), hash_for_edit_puppetclass_path(:id => puppet_class).merge(:auth_object => puppet_class, :authorizer => @puppetclass_authorizer) if puppet_class %></td>
|
||
<td><%=h lookup_key.lookup_values_count %></td>
|
||
<td><%= display_delete_if_authorized hash_for_lookup_key_path(:id => lookup_key).merge(:auth_object => lookup_key, :permission => 'destroy_external_variables', :authorizer => authorizer),
|
||
:data => { :confirm => _("Delete %s?") % lookup_key.key } %></td>
|
||
</tr>
|
||
<% end %>
|
||
</tbody>
|
config/routes/api/v2.rb | ||
---|---|---|
end
|
||
resources :puppetclasses, :except => [:new, :edit] do
|
||
resources :smart_class_parameters, :except => [:new, :edit, :create] do
|
||
resources :override_values, :except => [:new, :edit]
|
||
resources :override_values, :except => [:new, :edit, :destroy]
|
||
end
|
||
end
|
||
resources :hosts, :except => [:new, :edit]
|
||
... | ... | |
resources :override_values, :except => [:new, :edit]
|
||
end
|
||
resources :smart_class_parameters, :except => [:new, :edit, :create] do
|
||
resources :override_values, :except => [:new, :edit]
|
||
resources :override_values, :except => [:new, :edit, :destroy]
|
||
end
|
||
resources :environments, :only => [] do
|
||
resources :smart_class_parameters, :except => [:new, :edit, :create] do
|
||
resources :override_values, :except => [:new, :edit]
|
||
resources :override_values, :except => [:new, :edit, :destroy]
|
||
end
|
||
end
|
||
resources :hostgroups, :only => [:index, :show]
|
||
... | ... | |
resources :override_values, :except => [:new, :edit]
|
||
end
|
||
|
||
resources :smart_class_parameters, :except => [:new, :edit, :create] do
|
||
resources :smart_class_parameters, :except => [:new, :edit, :create, :destroy] do
|
||
resources :override_values, :except => [:new, :edit]
|
||
end
|
||
|
test/functional/api/v1/lookup_keys_controller_test.rb | ||
---|---|---|
assert_response :success
|
||
end
|
||
|
||
test "should destroy lookup_keys" do
|
||
assert_difference('LookupKey.count', -1) do
|
||
test "should not destroy PuppetclassLookupKey" do
|
||
assert_difference('LookupKey.count', 0) do
|
||
delete :destroy, { :id => lookup_keys(:one).to_param }
|
||
end
|
||
assert_response 422
|
||
end
|
||
|
||
test "should destroy VariableLookupKey" do
|
||
assert_difference('LookupKey.count', -1) do
|
||
delete :destroy, { :id => lookup_keys(:two).to_param }
|
||
end
|
||
assert_response :success
|
||
end
|
||
end
|
test/functional/api/v2/smart_class_parameters_controller_test.rb | ||
---|---|---|
refute_equal orig_value, new_value
|
||
end
|
||
|
||
test "should destroy smart class parameter" do
|
||
assert_difference('LookupKey.count', -1) do
|
||
delete :destroy, { :id => lookup_keys(:five).to_param }
|
||
end
|
||
assert_response :success
|
||
end
|
||
|
||
test "should return error if smart class parameter if it does not belong to specified puppetclass" do
|
||
get :show, {:id => lookup_keys(:five).id, :puppetclass_id => puppetclasses(:one).id}
|
||
assert_response 404
|
Also available in: Unified diff
Fixes #11693 - removed 'destroy' for smart class parameter from API controllers