~aleteoryx/employ

simple script-based job queue
better heuristics
smarter filename heuristics

refs

master
browse  log 

clone

read-only
https://git.amehut.dev/~aleteoryx/employ
read/write
git@git.amehut.dev:~aleteoryx/employ

You can also use your local clone with git send-email.

#this software is NOT safe to use for ANY purpose

#employ

a simple job server. it works by shitting shell scripts over the network. designed to be easy to write shell scripts for, and easy to work with in any other language, too

the protocol is somewhat documented in /PLAN

#files

  • employer.py keeps track of jobs. it takes a database path, port, and optionally a host to listen on

  • employee.py runs jobs. it takes a host and port, and polls the server for new jobs, reporting a done or failed status based on the exit code of the server. it's not the most reliable thing atm

  • taken.py connects to a server, and outputs all the jobs that are in progress

  • queuers/employ.sh takes a given file and adds it to the job queue, outputting the job's id

  • queuers/reenc.py is what i actually built this for. it provides a way to queue ffmpeg encoding jobs, with some organization and stuff handled for you. it takes a host and port, and a directory to re-encode. it is specifically for tv shows, and other things released in a season/episode fashion. it recursively finds all media files in the given directory, and generates a file of metadata. then, it opens the file for the user to edit. episodes each have a season, episode, and title. once you've corrected the info in the file, re-run the script with the same args, and it'll queue jobs for every resolution in the RESOLUTIONS array. you'll probably want to change the actual encoding instructions if you use this, mine is for low-power devices