Sha256: 2a647458aa6317e8e1560ffbd5f684873cbb550cf3a6d531d7b60487b6cceab1

Contents?: true

Size: 1.27 KB

Versions: 21

Compression:

Stored size: 1.27 KB

Contents

module ForemanInventoryUpload
  class UploadsSettingsController < ::ApplicationController
    def index
      render json: {
        autoUploadEnabled: Setting[:allow_auto_inventory_upload],
        hostObfuscationEnabled: Setting[:obfuscate_inventory_hostnames],
        ipsObfuscationEnabled: Setting[:obfuscate_inventory_ips],
        excludePackagesEnabled: Setting[:exclude_installed_packages],
        CloudConnectorStatus: ForemanInventoryUpload::UploadsSettingsController.cloud_connector_status,
        lastSyncTask: last_successful_inventory_sync_task,
      }, status: :ok
    end

    def set_advanced_setting
      Setting[params.require(:setting)] = ActiveModel::Type::Boolean.new.cast(params.require(:value))
      index
    end

    def self.cloud_connector_status
      cloud_connector = ForemanRhCloud::CloudConnector.new
      job = cloud_connector&.latest_job
      return nil unless job
      { id: job.id, task: ForemanTasks::Task.where(:id => job.task_id).first }
    end

    def last_successful_inventory_sync_task
      task = ForemanTasks::Task.where(label: 'InventorySync::Async::InventoryFullSync', result: 'success')
                        .reorder('ended_at desc').first
      return nil unless task
      { output: task.output, endedAt: task.ended_at }
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
foreman_rh_cloud-7.0.48 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-7.0.47 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-8.0.46 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-6.0.45 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-5.0.46 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-5.0.45 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-7.0.46 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-5.0.44 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-7.0.45 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-6.0.44 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-5.0.43 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-6.0.42.2 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-6.0.42.1 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-6.0.43 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-5.0.42 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-6.0.42 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-5.0.41 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-5.0.39 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-5.0.38 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb
foreman_rh_cloud-5.0.37 app/controllers/foreman_inventory_upload/uploads_settings_controller.rb