create_job

in lib/core/elastic_connector_actions.rb [217:240]


      def create_job(connector_settings:)
        body = {
          status: Connectors::SyncStatus::PENDING,
          created_at: Time.now,
          last_seen: Time.now,
          trigger_method: connector_settings.sync_now? ? Connectors::JobTriggerMethod::ON_DEMAND : Connectors::JobTriggerMethod::SCHEDULED,
          connector: {
            id: connector_settings.id,
            filtering: convert_connector_filtering_to_job_filtering(connector_settings.filtering),
            index_name: connector_settings.index_name,
            language: connector_settings[:language],
            pipeline: connector_settings[:pipeline],
            service_type: connector_settings.service_type,
            configuration: connector_settings.configuration
          }
        }

        index_response = client.index(index: Utility::Constants::JOB_INDEX, body: body, refresh: true)

        return index_response if index_response['result'] == 'created'

        raise JobNotCreatedError.new(connector_settings.id, index_response)
      end