lightning-reckless

lightning-reckless -- Issue a command to the reckless plugin manager utility

SYNOPSIS

reckless command [target/subcommand] [target]

DESCRIPTION

The reckless RPC starts a reckless process with the command and target provided. Node configuration, network, and lightning direrctory are automatically passed to the reckless utility.

  • command (string) (one of "install", "uninstall", "search", "enable", "disable", "source", "--version"): Determines which command to pass to reckless
    • command install takes a plugin_name to search for and install a named plugin.
    • command uninstall takes a plugin_name and attempts to uninstall a plugin of the same name.
    • command search takes a plugin_name to search for a named plugin.
      ...
  • target/subcommand (one of, optional): Target of a reckless command or a subcommand.:
    • (string)
    • (array)
  • target (one of, optional): name of a plugin to install/uninstall/search/enable/disable or source to add/remove.:
    • (string)
    • (array)

RETURN VALUE

On success, an object is returned, containing:

  • result (array of strings): Output of the requested reckless command.:
    • (string, optional)
  • log (array of strings): Verbose log entries of the requested reckless command.:
    • (string, optional)

AUTHOR

Alex Myers <[email protected]> is mainly responsible.

SEE ALSO

reckless(7)

RESOURCES

Main web site: https://github.com/ElementsProject/lightning

EXAMPLES

Example 1:

Request:

lightning-cli reckless -k "command"="search" "target/subcommand"="backup"
{
  "id": "example:reckless#1",
  "method": "reckless",
  "params": {
    "command": "search",
    "target/subcommand": "backup"
  }
}

Response:

{
  "result": [
    "https://github.com/lightningd/plugins"
  ],
  "log": [
    "DEBUG: Warning: Reckless requires write access",
    "DEBUG: fetching from gh API: https://api.github.com/repos/lightningd/plugins/contents/",
    "DEBUG: fetching from gh API: https://api.github.com/repos/lightningd/plugins/git/trees/294f93d7060799439c994daa84f534c4d1458325",
    "INFO: found backup in source: https://github.com/lightningd/plugins",
    "DEBUG: entry: None",
    "DEBUG: sub-directory: backup"
  ]
}

Example 2:

Request:

lightning-cli reckless -k "command"="install" "target/subcommand"='["summars", "currecyrate"]'
{
  "id": "example:reckless#2",
  "method": "reckless",
  "params": {
    "command": "install",
    "target/subcommand": [
      "summars",
      "currecyrate"
    ]
  }
}

Response:

{
  "result": [
    "/tmp/l1/reckless/summars",
    "/tmp/l1/reckless/currencyrate"
  ],
  "log": [
    "DEBUG: Searching for summars",
    "DEBUG: fetching from gh API: https://api.github.com/repos/lightningd/plugins/contents/",
    "DEBUG: fetching from gh API: https://api.github.com/repos/lightningd/plugins/git/trees/294f93d7060799439c994daa84f534c4d1458325",
    "INFO: found summars in source: https://github.com/lightningd/plugins",
    "DEBUG: entry: None",
    "DEBUG: sub-directory: summars",
    "DEBUG: Retrieving summars from https://github.com/lightningd/plugins",
    "DEBUG: Install requested from InstInfo(summars, https://github.com/lightningd/plugins, None, None, None, summars).",
    "INFO: cloning Source.GITHUB_REPO InstInfo(summars, https://github.com/lightningd/plugins, None, None, None, summars)",
    "DEBUG: cloned_src: InstInfo(summars, /tmp/reckless-726255950dyifh_fh/clone, None, Cargo.toml, Cargo.toml, summars/summars)",
    "DEBUG: using latest commit of default branch",
    "DEBUG: checked out HEAD: 5e449468bd57db7d0f33178fe0dc867e0da94133",
    "DEBUG: using installer rust",
    "DEBUG: creating /tmp/l1/reckless/summars",
    "DEBUG: creating /tmp/l1/reckless/summars/source",
    "DEBUG: copying /tmp/reckless-726255950dyifh_fh/clone/summars/summars tree to /tmp/l1/reckless/summars/source/summars",
    "DEBUG: linking source /tmp/l1/reckless/summars/source/summars/Cargo.toml to /tmp/l1/reckless/summars/Cargo.toml",
    "DEBUG: InstInfo(summars, /tmp/l1/reckless/summars, None, Cargo.toml, Cargo.toml, source/summars)",
    "DEBUG: cargo installing from /tmp/l1/reckless/summars/source/summars",
    "DEBUG: rust project compiled successfully",
    "INFO: plugin installed: /tmp/l1/reckless/summars",
    "DEBUG: activating summars",
    "INFO: summars enabled",
    "DEBUG: Searching for currencyrate",
    "DEBUG: fetching from gh API: https://api.github.com/repos/lightningd/plugins/contents/",
    "DEBUG: fetching from gh API: https://api.github.com/repos/lightningd/plugins/git/trees/294f93d7060799439c994daa84f534c4d1458325",
    "INFO: found currencyrate in source: https://github.com/lightningd/plugins",
    "DEBUG: entry: None",
    "DEBUG: sub-directory: currencyrate",
    "DEBUG: Retrieving currencyrate from https://github.com/lightningd/plugins",
    "DEBUG: Install requested from InstInfo(currencyrate, https://github.com/lightningd/plugins, None, None, None, currencyrate).",
    "INFO: cloning Source.GITHUB_REPO InstInfo(currencyrate, https://github.com/lightningd/plugins, None, None, None, currencyrate)",
    "DEBUG: cloned_src: InstInfo(currencyrate, /tmp/reckless-192564272t478naxn/clone, None, currencyrate.py, requirements.txt, currencyrate/currencyrate)",
    "DEBUG: using latest commit of default branch",
    "DEBUG: checked out HEAD: 5e449468bd57db7d0f33178fe0dc867e0da94133",
    "DEBUG: using installer python3venv",
    "DEBUG: creating /tmp/l1/reckless/currencyrate",
    "DEBUG: creating /tmp/l1/reckless/currencyrate/source",
    "DEBUG: copying /tmp/reckless-192564272t478naxn/clone/currencyrate/currencyrate tree to /tmp/l1/reckless/currencyrate/source/currencyrate",
    "DEBUG: linking source /tmp/l1/reckless/currencyrate/source/currencyrate/currencyrate.py to /tmp/l1/reckless/currencyrate/currencyrate.py",
    "DEBUG: InstInfo(currencyrate, /tmp/l1/reckless/currencyrate, None, currencyrate.py, requirements.txt, source/currencyrate)",
    "DEBUG: configuring a python virtual environment (pip) in /tmp/l1/reckless/currencyrate/.venv",
    "DEBUG: virtual environment created in /tmp/l1/reckless/currencyrate/.venv.",
    "INFO: dependencies installed successfully",
    "DEBUG: virtual environment for cloned plugin: .venv",
    "INFO: plugin installed: /tmp/l1/reckless/currencyrate",
    "DEBUG: activating currencyrate",
    "INFO: currencyrate enabled"
  ]
}