Schedule pypyr pipelines with apscheduler and control them via REST. The API interface is provided by connexion.
This documentation is in a very early stage and many things could be missing or wrong. Please rely on the code for now.
Make a new venv, activate it, clone the repo, run pip install
. No pypi release yet.
We recommend using pipenv, which makes it easy to run commands inside a virtual env without the need to create or activate it:
pip install --user pipenv # only needed once per python install
pipenv install
pipenv run server
pypyr-scheduler
needs a shared secret between the server and the client.
It reads it from the environment variable PYRSCHED_SECRET
.
If the server does not see a secret it generates it and writes it to its
logfile for later use. If there is a secret set in the environment, it is used.
A client needs the same shared secret.
Run pipenv run server
. Now you can connect to the server with a suitable client.
Currently available are pypyr-scheduler-cli
and pypyr-scheduler-rpc-client
with the first one depending on the latter.
TBD.
Detailed documentaion is available on ReadTheDocs.
It is generated from the docs/source
folder in this repository. Feel free to send a PR is you find any typos.
Run tests with pipen run tests
.
- https://travis-ci.org/pypyr-scheduler/pypyr-scheduler
- https://coveralls.io/github/pypyr-scheduler/pypyr-scheduler
pypyr is the workhorse underlying pypyr-scheduler. It runs pipelines defines as .yaml file and has many different pipeline steps included. Check it out, if you need a simple task automation for one-shot execution.
Flask-APScheduler provides a similar way to run job within flask as server. It even provides a REST-API. Try this if you don't need the functionality of pypyr.