Skip to main content

A YAML-driven task runner for lazy people

Project description

Yo-runner

Yo is a Yaml-driven task runner for lazy people. When you're coding, you may often need to run a long command many times, but you don't want to do all that typing every time. You don't want to have to remember the options or the flags every time. You could write a Makefile, but they're annoying. Maybe your toolkit provides the functionality, if you want to mess with that. You could use something like gulp or grunt, but that's a lot of overhead. All you really want is something like directory-specific aliases.

That's where yo comes in. All you do is write a yo.yaml that looks something like this:

run: poetry run flask run
serve-docs: python -m http.server --directory docs/_build
docs: 
  - poetry run sphinx-build docs docs/_build | tee docs/build_errors.txt
  - serve-docs
test: poetry run pytest

Now, in that directory you can run yo run to run your app, yo serve-docs to serve your documentation folder, yo docs to build and serve documentation, and yo test to figure out why your stupid program still isn't working. And any arguments you pass to the yo command will be passed through the task.

Yo can handle single commands, sequential lists, and concurrent lists. Every command is run on the shell, so pipes and redirects work. There's also support for environment variables and variables internal to the yo.yaml so that you don't have to type paths more than once. It's lazy all the way down.

See the full documentation for yo at https://OliverSherouse.github.io/yo-runner.

Project details


Download files

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

Files for yo-runner, version 0.1.2
Filename, size File type Python version Upload date Hashes
Filename, size yo_runner-0.1.2-py3-none-any.whl (10.2 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size yo-runner-0.1.2.tar.gz (4.8 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page