[ https://issues.apache.org/jira/browse/COMDEV-462?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jiajie Zhong updated COMDEV-462: -------------------------------- Description: Up to now, Apache DolphinScheduler Python API has CLI only with limited command supported and our community wishes it to become a more powerful tool and support as much command as possible(unless command has security issue). It only supports `version` and `config` for now, which you could see more detail in [1] Basically, we think the following command is helpful for CLI and you could add other command if it should be added(but may sure after discuss in community): * `run <DAG name> [--example]`: Run local workflow DAG file or examples build-in * `users`: User's operation, CURD * `projects`: Project's operation, CURD, grant to other users * `tenants`: Tenant's operation, CURD * `workflow`: Workflow's operation, CURD, name change, should also change the local Python file name * `visualize`: Show task graph in the terminal. * etc... Besides the functional addition, we should also consider the output part of CLI which makes our output more clear and cool. We *may* consider using (we should also find other interesting packages to do it): * rich: For highlight, our output, or using some existing rich plugin like `click-rich` * tabulate: For the tables visualization in terminal If you want to take this ticket, you should * (Must) Python skill, especially packages click, pytest and etc. * Have a little knowledge of task scheduling systems. * (Optional) Basic Java knowledge is better because Apache DolphinScheduler core is written with Java and you may add some functional code to it. [1]: [https://dolphinscheduler.apache.org/python/cli.html] [2]: [https://github.com/Textualize/rich] [3]: [https://github.com/astanin/python-tabulate] was: Up to now, Apache DolphinScheduler Python API has CLI only with limited command supported and our community wishes it to become a more powerful tool and support as much command as possible(unless command has security issue). It only supports `version` and `config` for now, which you could see more detail in [1] Basically, we think the following command is helpful for CLI and you could add other command if it should be added(but may sure after discuss in community): * `run <DAG name> [--example]`: Run local workflow DAG file or examples build-in * `users`: User's operation, CURD * `projects`: Project's operation, CURD, grant to other users * `tenants`: Tenant's operation, CURD * `workflow`: Workflow's operation, CURD, name change, should also change the local Python file name * `visualize`: Show task graph in the terminal. * etc... Besides the functional addition, we should also consider the output part of CLI which makes our output more clear and cool. We *{*}may{*}* consider using (we should also find other interesting packages to do it): * rich: For highlight, our output, or using some existing rich plugin like `click-rich` * tabulate: For the tables visualization in terminal If you want to take this ticket, you should * (Must) Python skill, especially packages click, pytest and etc. * Have a little knowledge of task scheduling systems. * (Optional) Basic Java knowledge is better because Apache DolphinScheduler core is written with Java and you may add some functional code to it. [1]: [https://dolphinscheduler.apache.org/python/cli.html] [2]: [https://github.com/Textualize/rich] [3]: [https://github.com/astanin/python-tabulate] > [DolphinScheduler] Python API CLI enhancement > --------------------------------------------- > > Key: COMDEV-462 > URL: https://issues.apache.org/jira/browse/COMDEV-462 > Project: Community Development > Issue Type: Task > Components: GSoC/Mentoring ideas > Reporter: Jiajie Zhong > Priority: Major > Labels: DolphinScheduler, full-time, gsoc2022 > > Up to now, Apache DolphinScheduler Python API has CLI only with limited > command supported and our community wishes it to become a more powerful tool > and support as much command as possible(unless command has security issue). > It only supports `version` and `config` for now, which you could see more > detail in [1] > Basically, we think the following command is helpful for CLI and you could > add other command if it should be added(but may sure after discuss in > community): > * `run <DAG name> [--example]`: Run local workflow DAG file or examples > build-in > * `users`: User's operation, CURD > * `projects`: Project's operation, CURD, grant to other users > * `tenants`: Tenant's operation, CURD > * `workflow`: Workflow's operation, CURD, name change, should also change > the local Python file name > * `visualize`: Show task graph in the terminal. > * etc... > Besides the functional addition, we should also consider the output part of > CLI which makes our output more clear and cool. We *may* consider using (we > should also find other interesting packages to do it): > * rich: For highlight, our output, or using some existing rich plugin like > `click-rich` > * tabulate: For the tables visualization in terminal > If you want to take this ticket, you should > * (Must) Python skill, especially packages click, pytest and etc. > * Have a little knowledge of task scheduling systems. > * (Optional) Basic Java knowledge is better because Apache DolphinScheduler > core is written with Java and you may add some functional code to it. > > [1]: [https://dolphinscheduler.apache.org/python/cli.html] > [2]: [https://github.com/Textualize/rich] > [3]: [https://github.com/astanin/python-tabulate] -- This message was sent by Atlassian Jira (v8.20.1#820001) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@community.apache.org For additional commands, e-mail: dev-h...@community.apache.org