LinchPin Command Line Shell implementation

The linchpin.shell module contains calls to implement the Command Line Interface within linchpin. It uses the Click command line interface composer. All calls here interface with the LinchPin Command-Line API API.

linchpin.shell.init()

Initializes a linchpin project, which generates an example PinFile, and creates the necessary directory structure for topologies and layouts.

linchpin.shell.up()

Provisions nodes from the given target(s) in the given PinFile.

targets: Provision ONLY the listed target(s). If omitted, ALL targets in the appropriate PinFile will be provisioned.

run-id: Use the data from the provided run_id value

linchpin.shell.destroy()

Destroys nodes from the given target(s) in the given PinFile.

targets: Destroy ONLY the listed target(s). If omitted, ALL targets in the appropriate PinFile will be destroyed.

run-id: Use the data from the provided run_id value

linchpin.shell.fetch()

Fetches a specified linchpin workspace or component from a remote location.

fetch_type: Specifies which component of a workspace the user wants to fetch. Types include: topology, layout, resources, hooks, workspace

remote: The URL or URI of the remote directory

linchpin.shell.journal()

Display information stored in Run Database

targets: Display data for the listed target(s). If omitted, the latest
records for any/all targets in the RunDB will be displayed.

fields: Comma separated list of fields to show in the display. (Default: action, uhash, rc)

(available fields are: uhash, rc, start, end, action)