in lib/core/elastic_connector_actions.rb [344:463]
def ensure_connectors_index_exists
mappings = {
:dynamic => false,
:properties => {
:api_key_id => { :type => :keyword },
:configuration => { :type => :object },
:custom_schedule => { :type => :object },
:description => { :type => :text },
:error => { :type => :keyword },
:features => {
:properties => {
:filtering_advanced_config => { :type => :boolean },
:filtering_rules => { :type => :boolean }
}
},
:filtering => {
:properties => {
:domain => { :type => :keyword },
:active => {
:properties => {
:rules => {
:properties => {
:id => { :type => :keyword },
:policy => { :type => :keyword },
:field => { :type => :keyword },
:rule => { :type => :keyword },
:value => { :type => :keyword },
:order => { :type => :short },
:created_at => { :type => :date },
:updated_at => { :type => :date }
}
},
:advanced_snippet => {
:properties => {
:value => { :type => :object },
:created_at => { :type => :date },
:updated_at => { :type => :date }
}
},
:validation => {
:properties => {
:state => { :type => :keyword },
:errors => {
:properties => {
:ids => { :type => :keyword },
:messages => { :type => :text }
}
}
}
}
}
},
:draft => {
:properties => {
:rules => {
:properties => {
:id => { :type => :keyword },
:policy => { :type => :keyword },
:field => { :type => :keyword },
:rule => { :type => :keyword },
:value => { :type => :keyword },
:order => { :type => :short },
:created_at => { :type => :date },
:updated_at => { :type => :date }
}
},
:advanced_snippet => {
:properties => {
:value => { :type => :object },
:created_at => { :type => :date },
:updated_at => { :type => :date }
}
},
:validation => {
:properties => {
:state => { :type => :keyword },
:errors => {
:properties => {
:ids => { :type => :keyword },
:messages => { :type => :text }
}
}
}
}
}
}
}
},
:index_name => { :type => :keyword },
:is_native => { :type => :boolean },
:language => { :type => :keyword },
:last_seen => { :type => :date },
:last_sync_error => { :type => :keyword },
:last_sync_status => { :type => :keyword },
:last_synced => { :type => :date },
:last_deleted_document_count => { :type => :long },
:last_indexed_document_count => { :type => :long },
:name => { :type => :keyword },
:pipeline => {
:properties => {
:extract_binary_content => { :type => :boolean },
:name => { :type => :keyword },
:reduce_whitespace => { :type => :boolean },
:run_ml_inference => { :type => :boolean }
}
},
:scheduling => {
:properties => {
:enabled => { :type => :boolean },
:interval => { :type => :text }
}
},
:service_type => { :type => :keyword },
:status => { :type => :keyword },
:sync_now => { :type => :boolean }
}
}
ensure_index_exists("#{Utility::Constants::CONNECTORS_INDEX}-v1", system_index_body(:alias_name => Utility::Constants::CONNECTORS_INDEX, :mappings => mappings))
end