apache-dolphinscheduler


Nameapache-dolphinscheduler JSON
Version 4.0.4 PyPI version JSON
download
home_pagehttps://dolphinscheduler.apache.org/python/main/index.html
Summarypydolphinscheduler is Apache DolphinScheduler Python API.
upload_time2023-10-12 14:42:36
maintainer
docs_urlNone
authorApache Software Foundation
requires_python>=3.6
licenseApache License 2.0
keywords dolphinscheduler workflow scheduler taskflow
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->

# PyDolphinScheduler

[![PyPi Version](https://img.shields.io/pypi/v/apache-dolphinscheduler.svg?style=flat-square&logo=PyPi)](https://pypi.org/project/apache-dolphinscheduler/)
[![PyPi Python Versions](https://img.shields.io/pypi/pyversions/apache-dolphinscheduler.svg?style=flat-square&logo=python)](https://pypi.org/project/apache-dolphinscheduler/)
[![PyPi License](https://img.shields.io/:license-Apache%202-blue.svg?style=flat-square)](https://raw.githubusercontent.com/apache/dolphinscheduler-sdk-python/main/LICENSE)
[![PyPi Status](https://img.shields.io/pypi/status/apache-dolphinscheduler.svg?style=flat-square)](https://pypi.org/project/apache-dolphinscheduler/)
[![Downloads](https://static.pepy.tech/badge/apache-dolphinscheduler/month)](https://pepy.tech/project/apache-dolphinscheduler)
![Coverage Status](https://img.shields.io/codecov/c/github/apache/dolphinscheduler-sdk-python/main.svg?style=flat-square)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg?style=flat-square)](https://github.com/psf/black)
[![Imports: isort](https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat-square&labelColor=ef8336)](https://pycqa.github.io/isort)
[![CI](https://github.com/apache/dolphinscheduler-sdk-python/actions/workflows/ci.yaml/badge.svg)](https://github.com/apache/dolphinscheduler-sdk-python/actions/workflows/ci.yaml)
[![Twitter Follow](https://img.shields.io/twitter/follow/dolphinschedule.svg?style=social&label=Follow)](https://twitter.com/dolphinschedule)
[![Slack Status](https://img.shields.io/badge/slack-join_chat-white.svg?logo=slack&style=social)](https://s.apache.org/dolphinscheduler-slack)

**PyDolphinScheduler** is python API for [Apache DolphinScheduler](https://dolphinscheduler.apache.org),
which allow you definition your workflow by python code, aka workflow-as-codes.

## Quick Start

### Version Compatibility

At Nov 7, 2022 we seperated PyDolphinScheduler from DolphinScheduler, and the version of PyDolphinScheduler 4.0.0
can match multiple versions of DolphinScheduler, for more details, please refer to [version](https://dolphinscheduler.apache.org/python/main/index.html#version)

### Installation

```shell
# 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
```

> NOTE: package apache-dolphinscheduler not work on above Python version 3.10(including itself) in Window operating system
> due to dependence [py4j](https://pypi.org/project/py4j/) not work on those environments.

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

### Start DolphinScheduler

There are many ways to start DolphinScheduler, here we use docker to start and run it as a standalone server.

```shell
# Change the version of dolphinscheduler to the version you want to use, here we use 3.1.1 as example
DOLPHINSCHEDULER_VERSION=3.1.1
docker run --name dolphinscheduler-standalone-server -p 12345:12345 -p 25333:25333 -d apache/dolphinscheduler-standalone-server:"${DOLPHINSCHEDULER_VERSION}"
```

After the container is started, you can access the DolphinScheduler UI via http://localhost:12345/dolphinscheduler.
For more way to start DolphinScheduler and the more detail about DolphinScheduler, please refer to
[DolphinScheduler](https://dolphinscheduler.apache.org/#/en-us/docs/3.1.2/guide/start/quick-start)

### Run a simple example

We have many examples in [examples](src/pydolphinscheduler/examples) directory, we here pick up a typical one
to show how to run it.

```shell
# Get the latest code of example from github 
curl https://raw.githubusercontent.com/apache/dolphinscheduler-sdk-python/main/src/pydolphinscheduler/examples/tutorial.py -o ./tutorial.py

# Change tenant to real exists tenant in the host your DolphinScheduler running, by any editor you like 

# Run the example
python ./tutorial.py
```

> NOTICE: Since Apache DolphinScheduler's tenant is requests while running command, you have to change
> tenant value in file tutorial.py. The default value is `tenant_exists`, change it to username exists your host.

After that, a new workflow will be created by PyDolphinScheduler, and you can see it in DolphinScheduler web
UI's Project Management page. It will trigger the workflow automatically, so you can see the workflow running
in DolphinScheduler web UI's Workflow Instance page too. For more detail about any function about DolphinScheduler
Project Management, please refer to [DolphinScheduler Workflow](https://dolphinscheduler.apache.org/#/en-us/docs/3.1.2/guide/project/workflow-definition)

## Documentation

For full documentation visit [document](https://dolphinscheduler.apache.org/python/main/index.html). This
documentation is generated from this repository so please raise issues or pull requests for any additions, corrections, or clarifications.

## Contributing

If you would like to contribute, check out the [open issues on GitHub](https://github.com/apache/dolphinscheduler-sdk-python/issues).
You can also see the guide to [contributing](./CONTRIBUTING.md).

## Release

Follow the [release](./RELEASE.md) guide to release a new version of PyDolphinScheduler.

            

Raw data

            {
    "_id": null,
    "home_page": "https://dolphinscheduler.apache.org/python/main/index.html",
    "name": "apache-dolphinscheduler",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "dolphinscheduler,workflow,scheduler,taskflow",
    "author": "Apache Software Foundation",
    "author_email": "dev@dolphinscheduler.apache.org",
    "download_url": "https://files.pythonhosted.org/packages/89/7d/9c7c2cfc3af773882be36819791a5776d1c1db35d5e453fd171a787e04d8/apache-dolphinscheduler-4.0.4.tar.gz",
    "platform": null,
    "description": "<!--\nLicensed to the Apache Software Foundation (ASF) under one\nor more contributor license agreements.  See the NOTICE file\ndistributed with this work for additional information\nregarding copyright ownership.  The ASF licenses this file\nto you under the Apache License, Version 2.0 (the\n\"License\"); you may not use this file except in compliance\nwith the License.  You may obtain a copy of the License at\n\nhttp://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing,\nsoftware distributed under the License is distributed on an\n\"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\nKIND, either express or implied.  See the License for the\nspecific language governing permissions and limitations\nunder the License.\n-->\n\n# PyDolphinScheduler\n\n[![PyPi Version](https://img.shields.io/pypi/v/apache-dolphinscheduler.svg?style=flat-square&logo=PyPi)](https://pypi.org/project/apache-dolphinscheduler/)\n[![PyPi Python Versions](https://img.shields.io/pypi/pyversions/apache-dolphinscheduler.svg?style=flat-square&logo=python)](https://pypi.org/project/apache-dolphinscheduler/)\n[![PyPi License](https://img.shields.io/:license-Apache%202-blue.svg?style=flat-square)](https://raw.githubusercontent.com/apache/dolphinscheduler-sdk-python/main/LICENSE)\n[![PyPi Status](https://img.shields.io/pypi/status/apache-dolphinscheduler.svg?style=flat-square)](https://pypi.org/project/apache-dolphinscheduler/)\n[![Downloads](https://static.pepy.tech/badge/apache-dolphinscheduler/month)](https://pepy.tech/project/apache-dolphinscheduler)\n![Coverage Status](https://img.shields.io/codecov/c/github/apache/dolphinscheduler-sdk-python/main.svg?style=flat-square)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg?style=flat-square)](https://github.com/psf/black)\n[![Imports: isort](https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat-square&labelColor=ef8336)](https://pycqa.github.io/isort)\n[![CI](https://github.com/apache/dolphinscheduler-sdk-python/actions/workflows/ci.yaml/badge.svg)](https://github.com/apache/dolphinscheduler-sdk-python/actions/workflows/ci.yaml)\n[![Twitter Follow](https://img.shields.io/twitter/follow/dolphinschedule.svg?style=social&label=Follow)](https://twitter.com/dolphinschedule)\n[![Slack Status](https://img.shields.io/badge/slack-join_chat-white.svg?logo=slack&style=social)](https://s.apache.org/dolphinscheduler-slack)\n\n**PyDolphinScheduler** is python API for [Apache DolphinScheduler](https://dolphinscheduler.apache.org),\nwhich allow you definition your workflow by python code, aka workflow-as-codes.\n\n## Quick Start\n\n### Version Compatibility\n\nAt Nov 7, 2022 we seperated PyDolphinScheduler from DolphinScheduler, and the version of PyDolphinScheduler 4.0.0\ncan match multiple versions of DolphinScheduler, for more details, please refer to [version](https://dolphinscheduler.apache.org/python/main/index.html#version)\n\n### Installation\n\n```shell\n# Install\npython -m pip install apache-dolphinscheduler\n\n# Verify installation is successful, it will show the version of apache-dolphinscheduler, here we use 0.1.0 as example\npydolphinscheduler version\n# 0.1.0\n```\n\n> NOTE: package apache-dolphinscheduler not work on above Python version 3.10(including itself) in Window operating system\n> due to dependence [py4j](https://pypi.org/project/py4j/) not work on those environments.\n\nHere we show you how to install and run a simple example of PyDolphinScheduler\n\n### Start DolphinScheduler\n\nThere are many ways to start DolphinScheduler, here we use docker to start and run it as a standalone server.\n\n```shell\n# Change the version of dolphinscheduler to the version you want to use, here we use 3.1.1 as example\nDOLPHINSCHEDULER_VERSION=3.1.1\ndocker run --name dolphinscheduler-standalone-server -p 12345:12345 -p 25333:25333 -d apache/dolphinscheduler-standalone-server:\"${DOLPHINSCHEDULER_VERSION}\"\n```\n\nAfter the container is started, you can access the DolphinScheduler UI via http://localhost:12345/dolphinscheduler.\nFor more way to start DolphinScheduler and the more detail about DolphinScheduler, please refer to\n[DolphinScheduler](https://dolphinscheduler.apache.org/#/en-us/docs/3.1.2/guide/start/quick-start)\n\n### Run a simple example\n\nWe have many examples in [examples](src/pydolphinscheduler/examples) directory, we here pick up a typical one\nto show how to run it.\n\n```shell\n# Get the latest code of example from github \ncurl https://raw.githubusercontent.com/apache/dolphinscheduler-sdk-python/main/src/pydolphinscheduler/examples/tutorial.py -o ./tutorial.py\n\n# Change tenant to real exists tenant in the host your DolphinScheduler running, by any editor you like \n\n# Run the example\npython ./tutorial.py\n```\n\n> NOTICE: Since Apache DolphinScheduler's tenant is requests while running command, you have to change\n> tenant value in file tutorial.py. The default value is `tenant_exists`, change it to username exists your host.\n\nAfter that, a new workflow will be created by PyDolphinScheduler, and you can see it in DolphinScheduler web\nUI's Project Management page. It will trigger the workflow automatically, so you can see the workflow running\nin DolphinScheduler web UI's Workflow Instance page too. For more detail about any function about DolphinScheduler\nProject Management, please refer to [DolphinScheduler Workflow](https://dolphinscheduler.apache.org/#/en-us/docs/3.1.2/guide/project/workflow-definition)\n\n## Documentation\n\nFor full documentation visit [document](https://dolphinscheduler.apache.org/python/main/index.html). This\ndocumentation is generated from this repository so please raise issues or pull requests for any additions, corrections, or clarifications.\n\n## Contributing\n\nIf you would like to contribute, check out the [open issues on GitHub](https://github.com/apache/dolphinscheduler-sdk-python/issues).\nYou can also see the guide to [contributing](./CONTRIBUTING.md).\n\n## Release\n\nFollow the [release](./RELEASE.md) guide to release a new version of PyDolphinScheduler.\n",
    "bugtrack_url": null,
    "license": "Apache License 2.0",
    "summary": "pydolphinscheduler is Apache DolphinScheduler Python API.",
    "version": "4.0.4",
    "project_urls": {
        "Documentation": "https://dolphinscheduler.apache.org/python/main/index.html",
        "Homepage": "https://dolphinscheduler.apache.org/python/main/index.html",
        "Issue Tracker": "https://github.com/apache/dolphinscheduler-sdk-python/issues",
        "Source": "https://github.com/apache/dolphinscheduler-sdk-python",
        "Twitter": "https://twitter.com/dolphinschedule"
    },
    "split_keywords": [
        "dolphinscheduler",
        "workflow",
        "scheduler",
        "taskflow"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5ec787a693e891071f69dc1de52850745c0fe78e4b356d87b6cd7cd945ea11eb",
                "md5": "456501a2fdbf7f8bfcb88e7c50c7250f",
                "sha256": "553544043e3f78ec7d1074be7dcc8b69e859755ecd35b941347477877445cee5"
            },
            "downloads": -1,
            "filename": "apache_dolphinscheduler-4.0.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "456501a2fdbf7f8bfcb88e7c50c7250f",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 129152,
            "upload_time": "2023-10-12T14:42:34",
            "upload_time_iso_8601": "2023-10-12T14:42:34.585660Z",
            "url": "https://files.pythonhosted.org/packages/5e/c7/87a693e891071f69dc1de52850745c0fe78e4b356d87b6cd7cd945ea11eb/apache_dolphinscheduler-4.0.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "897d9c7c2cfc3af773882be36819791a5776d1c1db35d5e453fd171a787e04d8",
                "md5": "c9559fe93f3cf9621bc38a709b1be400",
                "sha256": "bf5275a91be8dda9889bafe6f1053c1cd6d6a8f1a62ae3abd5053e020cd40685"
            },
            "downloads": -1,
            "filename": "apache-dolphinscheduler-4.0.4.tar.gz",
            "has_sig": false,
            "md5_digest": "c9559fe93f3cf9621bc38a709b1be400",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 80452,
            "upload_time": "2023-10-12T14:42:36",
            "upload_time_iso_8601": "2023-10-12T14:42:36.915331Z",
            "url": "https://files.pythonhosted.org/packages/89/7d/9c7c2cfc3af773882be36819791a5776d1c1db35d5e453fd171a787e04d8/apache-dolphinscheduler-4.0.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-10-12 14:42:36",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "apache",
    "github_project": "dolphinscheduler-sdk-python",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "apache-dolphinscheduler"
}
        
Elapsed time: 0.15654s