Skip to content

adamkewley/jobson

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
June 18, 2022 19:33
June 18, 2022 19:33
June 18, 2022 19:33
June 18, 2022 19:33
October 31, 2018 20:29
December 30, 2020 12:58
October 5, 2017 22:51
October 5, 2017 22:51
March 30, 2021 22:20
June 18, 2022 19:33

⚠️ Warning ⚠️: This project is (effectively) unmaintained.

It mostly works fine, but additional patch/feature support is not currently available, or is very sparse. Apologies for the inconvenience, but I am quite busy 😥!

  • AK

jobson

A platform for transforming command-line applications into a job service

DOI

ui video demo

📖 Documentation, ⭐️ Demo

Jobson is a platform (backend webserver, frontend UI, and command-line client) that transforms command-line applications into a web-ready job service. Jobson's goal is to make it easy to share existing applications across the web without requiring a lot of server expertise. It was started in 2017 as internal software for handling scientific data requests for the Gaia satellite mission. Because it solves a general problem (turning arbitrary CLI applications into a web service) it was subsequently open-sourced in 2018.

Jobson generates a standard web service from a job specification file:

name: Trivial Application
description: Echoes supplied message to stdout

expectedInputs:
- id: message
  type: string
  name: Message
  description: The message to echo
  default: Hello, world!

execution:
  application: echo
  arguments:
  - ${inputs.message}

Quickstart

See documentation for comprehensive walkthrough.

Requires java (8+):

# install and add to PATH
wget https://github.com/adamkewley/jobson/releases/download/1.0.14/jobson-nix-1.0.14.tar.gz
tar xvf jobson-nix-1.0.14.tar.gz
export PATH=$PATH:jobson-nix-1.0.14/bin

# create demo workspace
jobson new --demo

# generate new spec
jobson generate spec someSpec

# edit
#nano specs/someSpec/spec.yml

# validate 
jobson validate spec someSpec

# host JSON API for running job
jobson serve config.yml

See installation documentation for details.