Sha256: 7689e6612967e0fdd43fbc23a54e13179b931843c8df4f4c6c5aaa05074a6076

Contents?: true

Size: 1.82 KB

Versions: 9

Compression:

Stored size: 1.82 KB

Contents

module ForemanAzureRm
  module Concerns
    module ComputeResourcesControllerExtensions
      include Api::Version2
      include Foreman::Controller::Parameters::ComputeResource
      extend ::Apipie::DSL::Concern
      update_api(:create, :update) do
        param :compute_resource, Hash do
          # Not adding :tenant as already specified in core.
          param :app_ident, String, :desc => N_("Client ID for AzureRm")
          param :secret_key, String, :desc => N_("Client Secret for AzureRm")
          param :sub_id, String, :desc => N_("Subscription ID for AzureRm")
        end
      end

      def available_resource_groups
        compute_resource = ComputeResource.find_by_id(params[:id])
        @available_resource_groups = compute_resource.available_resource_groups
        render :available_resource_groups, :layout => 'api/v2/layouts/index_layout'
      end

      def available_sizes
        compute_resource = ComputeResource.find_by_id(params[:id])
        @available_sizes = compute_resource.vm_sizes(params[:region_id])
        render :available_sizes, :layout => 'api/v2/layouts/index_layout'
      end

      def available_subnets
        compute_resource = ComputeResource.find_by_id(params[:id])
        @available_subnets = compute_resource.available_subnets
        render :available_subnets, :layout => 'api/v2/layouts/index_layout'
      end

      def available_vnets
        compute_resource = ComputeResource.find_by_id(params[:id])
        @available_vnets = compute_resource.available_vnets
        render :available_vnets, :layout => 'api/v2/layouts/index_layout'
      end

      def action_permission
        case params[:action]
          when 'available_resource_groups', 'available_sizes', 'available_subnets', 'available_vnets'
            :view
          else
            super
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
foreman_azure_rm-2.1.3 app/controllers/foreman_azure_rm/concerns/compute_resources_controller_extensions.rb
foreman_azure_rm-2.1.2 app/controllers/foreman_azure_rm/concerns/compute_resources_controller_extensions.rb
foreman_azure_rm-2.1.1 app/controllers/foreman_azure_rm/concerns/compute_resources_controller_extensions.rb
foreman_azure_rm-2.1.0 app/controllers/foreman_azure_rm/concerns/compute_resources_controller_extensions.rb
foreman_azure_rm-2.0.8 app/controllers/foreman_azure_rm/concerns/compute_resources_controller_extensions.rb
foreman_azure_rm-2.0.7 app/controllers/foreman_azure_rm/concerns/compute_resources_controller_extensions.rb
foreman_azure_rm-2.0.6 app/controllers/foreman_azure_rm/concerns/compute_resources_controller_extensions.rb
foreman_azure_rm-2.0.5 app/controllers/foreman_azure_rm/concerns/compute_resources_controller_extensions.rb
foreman_azure_rm-2.0.4 app/controllers/foreman_azure_rm/concerns/compute_resources_controller_extensions.rb