A simple task runner
Project description
yatte
A simple task runner
Make and Bash are useful tools but the syntax can be tricky, especially if you're writing Bash inside a Makefile. And sometimes you need the flexibility and expressivity of a proper programming language with a standard library.
If you know Ruby, you're probably already familiar with Rake; and for Python there's Invoke. But maybe you don't want to invest time in learning a new tool and its idiosyncracies.
Yatte is for when you just want to write a Python script and get back to work.
Project links
Quickstart
Install the package:
pip install yatte
Create a file named tasks.py
containing some functions decorated with @task
:
from subprocess import run
from sys import exit, stderr
from yatte import task
@task("greet")
def hello():
"""Greet the world"""
print("Hello, world!")
@task("list-files")
def list_files(dir):
"""List the files in the directory"""
shell(f"ls {dir}")
def shell(cmd):
print("sh>", cmd, file=stderr)
p = run(cmd, shell=True)
if p.returncode:
exit(p.returncode)
Then call yatte
by itself to list the tasks:
$ yatte
greet Greet the world
list-files dir List the files in the directory
And yatte {task}
to execute the given task:
$ yatte list-files .
sh> ls .
pyproject.toml README.md tasks.py
See the docs for more details.
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
Built Distribution
Hashes for yatte-0.9.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3bba90663d1d39181290a364657680fb45cde99921feb441a5b1ec2a50f98b76 |
|
MD5 | a8f9afdc36b5d432bddd2267af6a6394 |
|
BLAKE2b-256 | 7e13a6eb9795d52285fac9dfefb6b187203e383123a2cc7778c4df67db5e8572 |