Pmake Cheatsheet
So this thing should theoretically be easy enough to use with all the information needed for it on one cheatsheet.
You can invoke pogmake with either pogmake or pog. It’ll do the same thing.
Specifying jobs
pogmake will start parsing pogfiles. Importing the root pogfile as a python object and start registering jobs. Jobs are functions decorated with the @job decorator.
@job("dependency1", "dependency2", desc="Can't think of a good description", default=True)
def my_jobname():
# ...
Dependencies are specified in a list, and all arguments to the @job decorator are optional.
pogfile Features
pogfiles are python files with a few python imports set.
import subprocess
import sys
import argparse
import os
import shutil
Additionally there are a few library functions from pogmake that get imported as well.
mod.job = job # job decorator
mod.cli_args = cli_args # parsed command line arguments
mod.pogmake_core = core # Access to all pogmake
# internals but not the importer or the frontend
mod.orig_dir = orig_dir # absolute path to origin of this pogfile
By default all pogfiles in inferior pathsto the root are searched for.
Use exclude_paths to skip them.
include_paths will also bypass this. And allow you to pull in pogfiles of any any name.
exclude_paths = ["dont_test", "unittests"]
include_paths = ["test_simple.py", "dont_test/test_anyway/"]