DolphinScheduler/dolphinscheduler-python/pydolphinscheduler
Jiajie Zhong 81930e5420
[python] Fix tasks with multiple upstream and workflow query error (#10941)
* when task with more than one upstreams, mapper
   TaskDefinitionMapper method queryByName will return
   more than one record, and failed the mybatis result
   type, so we have to add `limit 1` to it to
* add multiple runs of example in integrate test
* Change from subprocess.Popen to subprocess.call_check
  in integrating test which will raise an error when failed
2022-07-14 22:06:07 +08:00
..
docs [python] fix doc build error (#10810) 2022-07-06 22:02:08 +08:00
src/pydolphinscheduler [python] Fix tasks with multiple upstream and workflow query error (#10941) 2022-07-14 22:06:07 +08:00
tests [python] Fix tasks with multiple upstream and workflow query error (#10941) 2022-07-14 22:06:07 +08:00
.coveragerc [python] Add tox for out of box test (#8837) 2022-03-12 21:27:36 +08:00
.flake8 [Feature-8591][Python] Add pre-commit to run basic test before commit (#8843) 2022-03-14 20:51:55 +08:00
.isort.cfg [ci][python] Add isort to sort out import (#6871) 2021-11-17 11:48:52 +08:00
.pre-commit-config.yaml [python] Add autoflake to auto rm unused import (#8897) 2022-03-16 09:33:26 +08:00
DEVELOP.md [python] Correct some docs for python api (#10772) 2022-07-05 18:34:31 +08:00
LICENSE [python] Add LICENSE and NOTICE to python dist package (#8768) 2022-03-09 19:50:43 +08:00
NOTICE [python] Add LICENSE and NOTICE to python dist package (#8768) 2022-03-09 19:50:43 +08:00
pytest.ini [python] Fix change exists pd attribute user error (#9140) 2022-03-24 15:24:02 +08:00
README.md [python] Correct some docs for python api (#10772) 2022-07-05 18:34:31 +08:00
RELEASE.md [python] Clean deps and prepare release (#8210) 2022-01-28 10:12:00 +08:00
setup.cfg Add Python API implementation of workflows-as-code (#6269) 2021-10-31 20:35:46 +08:00
setup.py [python] Correct some docs for python api (#10772) 2022-07-05 18:34:31 +08:00
tox.ini [python] Add integrated test to python gateway server (#8966) 2022-03-18 16:24:40 +08:00
UPDATING.md [python] Support read config in env variable (#9517) 2022-04-15 15:46:44 +08:00

pydolphinscheduler

PyPi Version PyPi Python Versions PyPi License PyPi Status PyPi Downloads

Code style: black Imports: isort GitHub Build

PyDolphinScheduler is python API for Apache DolphinScheduler, which allow you definition your workflow by python code, aka workflow-as-codes.

Quick Start

Installation

# Install
python -m pip install apache-dolphinscheduler

# Verify installation is successful, it will show the version of apache-dolphinscheduler, here we use 0.1.0 as example
pydolphinscheduler version
# 0.1.0

Here we show you how to install and run a simple example of pydolphinscheduler

Start Server And Run Example

Before you run an example, you have to start backend server. You could follow development setup section "DolphinScheduler Standalone Quick Start" to set up developer environment. You have to start backend and frontend server in this step, which mean that you could view DolphinScheduler UI in your browser with URL http://localhost:12345/dolphinscheduler

After backend server is being start, all requests from pydolphinscheduler would be sent to backend server. And for now we could run a simple example by:

# Please make sure your terminal could 
curl https://raw.githubusercontent.com/apache/dolphinscheduler/dev/dolphinscheduler-python/pydolphinscheduler/examples/tutorial.py -o ./tutorial.py
python ./tutorial.py

NOTICE: Since Apache DolphinScheduler's tenant is requests while running command, you might need to change tenant value in example/tutorial.py. For now the value is tenant_exists, please change it to username exists in you environment.

After command execute, you could see a new project with single process definition named tutorial in the UI-project list.

Develop

Until now, we finish quick start by an example of pydolphinscheduler and run it. If you want to inspect or join pydolphinscheduler develop, you could take a look at develop

Release

If you are interested in how to release PyDolphinScheduler, you could go and see at release

What's more

For more detail information, please go to see PyDolphinScheduler document