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 2022/08/04 15:38:09 UTC

[airflow] branch main updated: Sync up plugin API schema and definition (#25524)

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 5de11e1410 Sync up plugin API schema and definition (#25524)
5de11e1410 is described below

commit 5de11e1410b432d632e8c0d1d8ca0945811a56f0
Author: Tzu-ping Chung <ur...@gmail.com>
AuthorDate: Thu Aug 4 23:37:58 2022 +0800

    Sync up plugin API schema and definition (#25524)
    
    Many of the entries should have been objects (dicts), not strings. Also
    removed "number" since it is not present anyway and I don't even know
    where it came from.
---
 airflow/api_connexion/endpoints/plugin_endpoint.py |  6 ++----
 airflow/api_connexion/openapi/v1.yaml              |  3 ---
 airflow/api_connexion/schemas/plugin_schema.py     | 11 +++++------
 airflow/www/static/js/types/api-generated.ts       |  2 --
 4 files changed, 7 insertions(+), 15 deletions(-)

diff --git a/airflow/api_connexion/endpoints/plugin_endpoint.py b/airflow/api_connexion/endpoints/plugin_endpoint.py
index 4b4b17bb96..3bdb17a99f 100644
--- a/airflow/api_connexion/endpoints/plugin_endpoint.py
+++ b/airflow/api_connexion/endpoints/plugin_endpoint.py
@@ -27,7 +27,5 @@ from airflow.security import permissions
 def get_plugins(*, limit: int, offset: int = 0) -> APIResponse:
     """Get plugins endpoint"""
     plugins_info = get_plugin_info()
-    total_entries = len(plugins_info)
-    plugins_info = plugins_info[offset:]
-    plugins_info = plugins_info[:limit]
-    return plugin_collection_schema.dump(PluginCollection(plugins=plugins_info, total_entries=total_entries))
+    collection = PluginCollection(plugins=plugins_info[offset:][:limit], total_entries=len(plugins_info))
+    return plugin_collection_schema.dump(collection)
diff --git a/airflow/api_connexion/openapi/v1.yaml b/airflow/api_connexion/openapi/v1.yaml
index e9efaa7ddc..9c5fbcec1c 100644
--- a/airflow/api_connexion/openapi/v1.yaml
+++ b/airflow/api_connexion/openapi/v1.yaml
@@ -3332,9 +3332,6 @@ components:
 
         *New in version 2.1.0*
       properties:
-        number:
-          type: string
-          description: The plugin number
         name:
           type: string
           description: The name of the plugin
diff --git a/airflow/api_connexion/schemas/plugin_schema.py b/airflow/api_connexion/schemas/plugin_schema.py
index 89704cd191..9fb75c7d7c 100644
--- a/airflow/api_connexion/schemas/plugin_schema.py
+++ b/airflow/api_connexion/schemas/plugin_schema.py
@@ -23,16 +23,15 @@ from marshmallow import Schema, fields
 class PluginSchema(Schema):
     """Plugin schema"""
 
-    number = fields.Int()
     name = fields.String()
     hooks = fields.List(fields.String())
     executors = fields.List(fields.String())
-    macros = fields.List(fields.String())
-    flask_blueprints = fields.List(fields.String())
-    appbuilder_views = fields.List(fields.String())
+    macros = fields.List(fields.Dict())
+    flask_blueprints = fields.List(fields.Dict())
+    appbuilder_views = fields.List(fields.Dict())
     appbuilder_menu_items = fields.List(fields.Dict())
-    global_operator_extra_links = fields.List(fields.String())
-    operator_extra_links = fields.List(fields.String())
+    global_operator_extra_links = fields.List(fields.Dict())
+    operator_extra_links = fields.List(fields.Dict())
     source = fields.String()
 
 
diff --git a/airflow/www/static/js/types/api-generated.ts b/airflow/www/static/js/types/api-generated.ts
index 5cf502fc60..cf5d8e49b1 100644
--- a/airflow/www/static/js/types/api-generated.ts
+++ b/airflow/www/static/js/types/api-generated.ts
@@ -1371,8 +1371,6 @@ export interface components {
      * *New in version 2.1.0*
      */
     PluginCollectionItem: {
-      /** @description The plugin number */
-      number?: string;
       /** @description The name of the plugin */
       name?: string;
       /** @description The plugin hooks */