This is a library for querying and scheduling with Apache Oozie.
- Oozie 4.1.0
- Python 2.7 and 3.4+
Let's build a codebase that we can be proud of, that enables us to deliver better results, faster and more confidently.
We can start with the following guidelines:
- Make sure your code is readable.
- Don't hesitate to refactor code where it improves the design.
- Don't take shortcuts; development is more like a marathon than a sprint.
- And leave the code cleaner than you found it.
This project follows the Google Python Style Guide with the following exceptions:
- Line Length: The maximum line length is 120 columns.
This project also targets both Python 2.7 and Python 3.3+; it's recommended to setup virtual environments for both Python 2 and 3 when developing, e.g.:
mkvirtualenv -a $(pwd) pyooziepy2 -p python2
mkvirtualenv -a $(pwd) pyooziepy3 -p python3
The documentation is hosted on ReadTheDocs: https://py-oozie.readthedocs.io
The doc is automatically updated from the master
branch. More info in
ReadTheDocs settings.
Install the dependencies:
$ pip install -e ./[docs]
Generate the html files:
$ make -C docs html
The locally build doc is located at docs/build/html/index.html
.
All committed code requires quality tests that provide ample code coverage. Functionality that is not covered by tests should be assumed to be broken (and probably will be).
Committing to master
requires a code review, submitted in the form of a GitHub Pull Request. To be merged, a PR must
have an explicit approval from a core team member and no outstanding questions.