You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by po...@apache.org on 2021/06/15 08:15:57 UTC

[airflow] branch main updated: Add ElasticSearch Connection Doc (#16436)

This is an automated email from the ASF dual-hosted git repository.

potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new e8d3de8  Add ElasticSearch Connection Doc (#16436)
e8d3de8 is described below

commit e8d3de828f834ea9527c8d3d0d434675c0b3ee41
Author: bryce-lewis <78...@users.noreply.github.com>
AuthorDate: Tue Jun 15 04:14:49 2021 -0400

    Add ElasticSearch Connection Doc (#16436)
---
 .../providers/elasticsearch/hooks/elasticsearch.py |  3 +-
 .../connections/elasticsearch.rst                  | 73 ++++++++++++++++++++++
 .../index.rst                                      |  1 +
 3 files changed, 76 insertions(+), 1 deletion(-)

diff --git a/airflow/providers/elasticsearch/hooks/elasticsearch.py b/airflow/providers/elasticsearch/hooks/elasticsearch.py
index df15619..9898775 100644
--- a/airflow/providers/elasticsearch/hooks/elasticsearch.py
+++ b/airflow/providers/elasticsearch/hooks/elasticsearch.py
@@ -30,7 +30,8 @@ class ElasticsearchHook(DbApiHook):
 
     This hook uses the Elasticsearch conn_id.
 
-    :param elasticsearch_conn_id: The Airflow connection used for Elasticsearch credentials.
+    :param elasticsearch_conn_id: The :ref:`ElasticSearch connection id <howto/connection:elasticsearch>`
+        used for Elasticsearch credentials.
     :type elasticsearch_conn_id: str
     """
 
diff --git a/docs/apache-airflow-providers-elasticsearch/connections/elasticsearch.rst b/docs/apache-airflow-providers-elasticsearch/connections/elasticsearch.rst
new file mode 100644
index 0000000..997dea5
--- /dev/null
+++ b/docs/apache-airflow-providers-elasticsearch/connections/elasticsearch.rst
@@ -0,0 +1,73 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+
+
+.. _howto/connection:elasticsearch:
+
+ElasticSearch Connection
+========================
+
+The ElasticSearch connection that enables ElasticSearch integrations.
+
+Authenticating to ElasticSearch
+-------------------------------
+
+Authenticate with the `ElasticSearch DBAPI
+<https://pypi.org/project/elasticsearch-dbapi/>`_
+
+Default Connection IDs
+----------------------
+
+Some hooks and operators related to ElasticSearch use elasticsearch_default by default.
+
+Configuring the Connection
+--------------------------
+
+User
+    Specify the login used for the initial connection
+
+Password
+    Specify the Elasticsearch API key used for the `initial connection
+    <https://www.elastic.co/guide/en/cloud/current/ec-api-authentication.html#ec-api-authentication>`_
+
+Host
+    Specify the Elasticsearch host used for the initial connection
+
+Port
+    Specify the Elasticsearch port for the initial connection
+
+Scheme
+    Specify the schema for the Elasticsearch API. `http` by default
+
+Extra (Optional)
+    Specify the extra parameters (as json dictionary) that can be used in Azure connection.
+    The following parameters are all optional:
+
+    * ``http_compress``: specify whether or not to use ``http_compress``. False by default.
+    * ``timeout``: specify the time frame of the ``timeout``. False by default.
+
+When specifying the connection in environment variable you should specify
+it using URI syntax.
+
+Note that all components of the URI should be URL-encoded.
+
+For example:
+
+.. code-block:: bash
+
+    export AIRFLOW_CONN_ELASTICSEARCH_DEFAULT='elasticsearch://elasticsearchlogin:elasticsearchpassword@elastic.co:80/http'
diff --git a/docs/apache-airflow-providers-elasticsearch/index.rst b/docs/apache-airflow-providers-elasticsearch/index.rst
index 6d7b06b..6f26338 100644
--- a/docs/apache-airflow-providers-elasticsearch/index.rst
+++ b/docs/apache-airflow-providers-elasticsearch/index.rst
@@ -26,6 +26,7 @@ Content
     :maxdepth: 1
     :caption: Guides
 
+    Connection types <connections/elasticsearch>
     Logging for Tasks <logging>
 
 .. toctree::