def create(self): base_client = Elasticsearch( self.query, use_ssl=self.ssl, # here some more params need to be configured. ) ingest_client = Elasticsearch( self.ingest, use_ssl=self.ssl, # here some more params need to be configured. ) base_client.ingest = ingest_client directlyProvides(base_client, IElasticSearchClient) provideUtility(base_client)
def setUpPloneSite(self, portal): # provide an ES connection from collective.es.index.interfaces import IElasticSearchClient from elasticsearch import Elasticsearch from zope.component import provideUtility from zope.interface import directlyProvides es = Elasticsearch( [{ 'host': '127.0.0.1', 'port': '9200' }], use_ssl=False, ) ingest = Elasticsearch( [{ 'host': '127.0.0.1', 'port': '9200' }], use_ssl=False, ) es.zope_configuration = configuration es.ingest = ingest directlyProvides(es, IElasticSearchClient) provideUtility(es)