Skip to main content

Task executor - balance between Makefile and Gradle.

Project description

https://api.travis-ci.com/riotkit-org/riotkit-do.svg?branch=master

Task executor - balance between Makefile and Gradle [see documentation]

docs/makefile.png
# via PIP
pip install rkd

# via PIPENV
pipenv install rkd

Please check available releases there: https://pypi.org/project/rkd/#history

NOTICE: This project is in testing stage. There is no stable release yet, but it will come very soon. The API can change in upcoming days.

Goals:

  • Define tasks as simple as in Makefile

  • Reuse code as simple as in Gradle (using extensions that provides tasks. Extensions are installable from PIP)

  • Simple configuration in Python

  • Write tasks code in Python as simple as possible

Rules

  • No hooks eg. task.executeAfter(otherTask), no complex dependencies

  • No dynamic tasks names eg. by turning on Publish component it should not create tasks eg. :publishIWAToDockerRegistry (where IWA is the project name)

  • Don’t pack too many features into the core, do this in external modules. Keep the RKD core clean!

  • Full static analysis, you can work on makefile.py and on task’s code in PyCharm with full code completion!

  • Do early validation. Runtime validation for long running builds is a pain-in-the-ass for the user.

  • Show clear error messages as much as it is possible. Task not found? Tell the user - do not leave a stack trace. Import error in makefile.py? Tell the user + add stack trace. RESPECT TIME OF ALL OF US! :)

Documentation

Please read the documentation here.

From authors

We are grassroot activists for social change, so we created RKD especially in mind for those fantastic initiatives:

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rkd-0.3.2.dev7.tar.gz (718.6 kB view details)

Uploaded Source

Built Distribution

rkd-0.3.2.dev7-py3-none-any.whl (32.2 kB view details)

Uploaded Python 3

File details

Details for the file rkd-0.3.2.dev7.tar.gz.

File metadata

  • Download URL: rkd-0.3.2.dev7.tar.gz
  • Upload date:
  • Size: 718.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.7

File hashes

Hashes for rkd-0.3.2.dev7.tar.gz
Algorithm Hash digest
SHA256 e7fed9f336fc0c7b7fdd7bad38f0dd0009af1097df23951799ba18857fb87c83
MD5 022f906d82dda88466ff9a1395f12183
BLAKE2b-256 587b006251e8d232eb76488661cda2bf25164dd3f4da1314bb9f58e573c4e02f

See more details on using hashes here.

Provenance

File details

Details for the file rkd-0.3.2.dev7-py3-none-any.whl.

File metadata

  • Download URL: rkd-0.3.2.dev7-py3-none-any.whl
  • Upload date:
  • Size: 32.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.7

File hashes

Hashes for rkd-0.3.2.dev7-py3-none-any.whl
Algorithm Hash digest
SHA256 23428552e274f52a1e91a64c4b8799b581c8243567a35313d8bf4b09835e06b1
MD5 2289b679308a2658ee312bc50df8195c
BLAKE2b-256 cd3d3c35fad25fc38e4aa23c0d342fd543fd7814d907bf40fb0342f18751f771

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page