You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by GitBox <gi...@apache.org> on 2020/10/14 18:18:11 UTC
[GitHub] [airflow] potiuk commented on a change in pull request #11526: Adds automated installation of dependent packages
potiuk commented on a change in pull request #11526:
URL: https://github.com/apache/airflow/pull/11526#discussion_r504879545
##########
File path: setup.py
##########
@@ -637,6 +638,95 @@ def write_version(filename: str = os.path.join(*[my_dir, "airflow", "git_version
'yandexcloud': yandexcloud,
}
+EXTRAS_PROVIDERS_PACKAGES: Dict[str, Iterable[str]] = {
+ 'all_dbs': [
+ "apache.cassandra", "apache.druid", "apache.hdfs", "apache.hive", "apache.pinot",
+ "cloudant", "exasol",
+ "mongo", "microsoft.mssql", "mysql", "postgres", "presto", "vertica"
+ ],
+ 'amazon': ["amazon"],
+ 'apache.atlas': [],
+ 'apache.beam': [],
+ "apache.cassandra": ["apache.cassandra"],
+ "apache.druid": ["apache.druid"],
+ "apache.hdfs": ["apache.hdfs"],
+ "apache.hive": ["apache.hive"],
+ "apache.kylin": ["apache.kylin"],
+ "apache.pinot": ["apache.pinot"],
+ "apache.webhdfs": ["apache.hdfs"],
+ 'async': [],
+ 'atlas': [], # TODO: remove this in Airflow 2.1
+ 'aws': ["amazon"], # TODO: remove this in Airflow 2.1
+ 'azure': ["microsoft.azure"], # TODO: remove this in Airflow 2.1
+ 'cassandra': ["apache.cassandra"], # TODO: remove this in Airflow 2.1
+ 'celery': ["celery"],
+ 'cgroups': [],
+ 'cloudant': ["cloudant"],
+ 'cncf.kubernetes': ["cncf.kubernetes"],
+ 'dask': ["dask"],
+ 'databricks': ["databricks"],
+ 'datadog': ["datadog"],
+ 'devel': ["cncf.kubernetes", "mysql"],
+ 'devel_hadoop': ["apache.hdfs", "apache.hive", "presto"],
+ 'doc': [],
+ 'docker': ["docker"],
+ 'druid': ["apache.druid"], # TODO: remove this in Airflow 2.1
+ 'elasticsearch': ["elasticsearch"],
+ 'exasol': ["exasol"],
+ 'facebook': ["facebook"],
+ 'gcp': ["google"], # TODO: remove this in Airflow 2.1
+ 'gcp_api': ["google"], # TODO: remove this in Airflow 2.1
+ 'github_enterprise': [],
+ 'google': ["google"],
+ 'google_auth': [],
+ 'grpc': ["grpc"],
+ 'hashicorp': ["hashicorp"],
+ 'hdfs': ["apache.hdfs"], # TODO: remove this in Airflow 2.1
+ 'hive': ["apache.hive"], # TODO: remove this in Airflow 2.1
+ 'jdbc': ["jdbc"],
+ 'jira': ["jira"],
+ 'kerberos': [],
+ 'kubernetes': ["cncf.kubernetes"], # TODO: remove this in Airflow 2.1
+ 'ldap': [],
Review comment:
For the very reason why https://github.com/apache/airflow/runs/1253789707?check_suite_focus=true#step:9:3844 failed.
I want to explicitly list all extras here, because we can miss some of those extras. I missed "devel_ci" and "all" for example because they are added few pages down.
If I remove the empty ones, I'd have to implement the logic "If missing - do not add any providers". But "missing" in this case has a different semantics: "someone has forgotten to add it" rather than "explicitly decided that this extras does not need any provider".
In this case explicit is far better than explicit and Python's zen is very right about it.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org