Sha256: 353ef32513f6096c1da9abd10a0958eac8c5b58c79193c01adb445c15d9c2204

Contents?: true

Size: 1.88 KB

Versions: 45

Compression:

Stored size: 1.88 KB

Contents

module ForemanPuppet
  module Api
    module V2
      class ConfigGroupsController < ::ForemanPuppet::Api::V2::PuppetBaseController
        include ForemanPuppet::Parameters::ConfigGroup

        resource_description do
          api_base_url '/foreman_puppet/api'
        end

        wrap_parameters ConfigGroup, include: config_group_params_filter.accessible_attributes(parameter_filter_context)

        before_action :find_resource, only: %i[show update destroy]

        api :GET, '/config_groups', N_('List of config groups')
        param_group :search_and_pagination, ::Api::V2::BaseController
        add_scoped_search_description_for(ConfigGroup)

        def index
          @config_groups = resource_scope_for_index
        end

        api :GET, '/config_groups/:id/', N_('Show a config group')
        param :id, :identifier, required: true

        def show
        end

        def_param_group :config_group do
          param :config_group, Hash, required: true, action_aware: true do
            param :name, String, required: true
            param :puppetclass_ids, Array
          end
        end

        api :POST, '/config_groups/', N_('Create a config group')
        param_group :config_group, as: :create

        def create
          @config_group = ConfigGroup.new(config_group_params)
          process_response @config_group.save
        end

        api :PUT, '/config_groups/:id/', N_('Update a config group')
        param :id, String, required: true
        param_group :config_group

        def update
          process_response @config_group.update(config_group_params)
        end

        api :DELETE, '/config_groups/:id/', N_('Delete a config group')
        param :id, String, required: true

        def destroy
          process_response @config_group.destroy
        end

        def resource_class
          ForemanPuppet::ConfigGroup
        end
      end
    end
  end
end

Version data entries

45 entries across 45 versions & 1 rubygems

Version Path
foreman_puppet-8.1.0 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-8.0.0 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-6.4.0 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-7.0.0 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-6.3.0 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-6.2.0 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-6.1.1 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-5.1.3 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-6.1.0 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-6.0.1 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-6.0.0 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-5.1.2 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-4.1.1 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-5.1.1 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-5.1.0 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-4.1.0 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-4.0.4 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-5.0.0 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-4.0.3 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb
foreman_puppet-4.0.2 app/controllers/foreman_puppet/api/v2/config_groups_controller.rb