DolphinScheduler/dolphinscheduler-python/pydolphinscheduler
Jiajie Zhong 90f9aed11d
[python] Add tox for out of box test (#8837)
* [python] Add tox for out of box test

* Add `tox` for easy and complete test
* Correct package data attribute
* Add more dirs in flake8 ignore

* Change GA from raw to tox

* Fix env setter

* Temp skip sanity

* Rm not exists job

* Add code test

* fix

* rm all need

* fix

* fix

* fix

* fix

* fix

* fix

* Migrate pip upgrede to tox setting

* Change install_commands to commands

* fix config of install command

* Add GA env to do that

* Fix env error

* Finial commit

* remove duplicate

* Change doc

* Change dependence of ci

* Change dependence of ci
2022-03-12 21:27:36 +08:00
..
docs [python] Add mechanism cli only with version as subcommand (#8516) 2022-02-24 16:05:55 +08:00
src/pydolphinscheduler [python] Change name to_string to __str__ and add __repr__ (#8830) 2022-03-12 20:36:51 +08:00
tests [python] Change name to_string to __str__ and add __repr__ (#8830) 2022-03-12 20:36:51 +08:00
.coveragerc [python] Add tox for out of box test (#8837) 2022-03-12 21:27:36 +08:00
.flake8 [python] Add tox for out of box test (#8837) 2022-03-12 21:27:36 +08:00
.isort.cfg [ci][python] Add isort to sort out import (#6871) 2021-11-17 11:48:52 +08:00
DEVELOP.md [python] Add tox for out of box test (#8837) 2022-03-12 21:27:36 +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
README.md [python] Add mechanism cli only with version as subcommand (#8516) 2022-02-24 16:05:55 +08:00
RELEASE.md [python] Clean deps and prepare release (#8210) 2022-01-28 10:12:00 +08:00
UPDATING.md [python] Change name to_string to __str__ and add __repr__ (#8830) 2022-03-12 20:36:51 +08:00
pytest.ini Add CI test for python API (#6636) 2021-11-04 11:19:11 +08:00
setup.cfg Add Python API implementation of workflows-as-code (#6269) 2021-10-31 20:35:46 +08:00
setup.py [python] Add tox for out of box test (#8837) 2022-03-12 21:27:36 +08:00
tox.ini [python] Add tox for out of box test (#8837) 2022-03-12 21:27:36 +08:00

README.md

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
$ 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