{
  "id": "leapp-cli",
  "name": "Leapp CLI",
  "homepage": "https://docs.leapp.cloud/",
  "description": "A command-line interface for Leapp cloud access management.",
  "executables": [
    "leapp"
  ],
  "dotfiles": {
    "paths": [
      "~/.Leapp/Leapp-lock.json"
    ],
    "secret": []
  },
  "commands": {
    "format": 1,
    "label": "leapp",
    "description": "List, start and stop Leapp cloud access sessions. Session creation, profiles, integrations and workspaces are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": false,
      "short_bundles": false
    },
    "subcommand": [
      {
        "path": [
          "session",
          "list"
        ],
        "label": "List sessions",
        "description": "Show sessions with their properties.",
        "source": [
          {
            "id": "doc",
            "kind": "help",
            "url": "https://github.com/Noovolari/leapp/blob/master/packages/cli/scopes/session.md",
            "revision": "0.1.65",
            "evidence": "$ leapp session list [--columns <value> | -x] [--sort <value>] [--filter <value>] [--output csv|json|yaml | [--csv | --no-truncate]] [--no-header | ]\n-x, --extended         show extra columns\n--columns=<value>  only show provided columns (comma-separated)\n--csv              output is csv format [alias: --output=csv]\n--filter=<value>   filter property by partial string matching, ex: name=foo\n--no-header        hide table header from output\n--no-truncate      do not truncate output to fit screen\n--output=<option>  output in a more machine friendly format <options: csv|json|yaml>\n--sort=<value>     property to sort by (prepend '-' for descending)\n"
          }
        ],
        "field": [
          {
            "id": "extended",
            "label": "Extra columns",
            "type": "boolean",
            "option": [
              "-x"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "filter",
            "label": "Filter",
            "description": "Case-sensitive partial match such as name=foo.",
            "type": "string",
            "option": [
              "--filter"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "sort",
            "label": "Sort by",
            "description": "Property name; prepend - for descending.",
            "type": "string",
            "option": [
              "--sort"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "output",
            "label": "Output format",
            "type": "enum",
            "option": [
              "--output"
            ],
            "choices": [
              {
                "value": "csv",
                "label": "CSV"
              },
              {
                "value": "json",
                "label": "JSON"
              },
              {
                "value": "yaml",
                "label": "YAML"
              }
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "no_header",
            "label": "Hide table header",
            "type": "boolean",
            "option": [
              "--no-header"
            ],
            "sources": [
              "doc"
            ]
          }
        ],
        "task": [
          {
            "id": "list_extended",
            "label": "List with extra columns",
            "fields": [
              "extended",
              "filter",
              "sort"
            ],
            "required": [
              "extended"
            ],
            "set": {
              "extended": [
                true
              ]
            }
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "extended",
              "filter",
              "sort"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "output",
              "no_header"
            ]
          }
        ]
      },
      {
        "path": [
          "session",
          "start"
        ],
        "label": "Start a session",
        "description": "Start a Leapp session by name or id.",
        "source": [
          {
            "id": "doc",
            "kind": "help",
            "url": "https://github.com/Noovolari/leapp/blob/master/packages/cli/scopes/session.md",
            "revision": "0.1.65",
            "evidence": "$ leapp session start [SESSIONNAME] [--sessionId <value>] [--sessionRole <value>] [--noInteractive]\nSESSIONNAME  Name of the Leapp session\n--noInteractive        If the specified session is not unique or doesn't exist, throw an error without starting the interactive session selection mode\n--sessionId=<value>    Session Id to identify the session in Leapp, recover it with $leapp session list -x\n--sessionRole=<value>  Session Role of one or more sessions in Leapp\n"
          }
        ],
        "field": [
          {
            "id": "session_name",
            "label": "Session name",
            "description": "Leave empty to choose interactively.",
            "type": "string",
            "position": 0,
            "sources": [
              "doc"
            ]
          },
          {
            "id": "session_id",
            "label": "Session id",
            "description": "Find ids with leapp session list -x.",
            "type": "string",
            "option": [
              "--sessionId"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "session_role",
            "label": "Session role",
            "type": "string",
            "option": [
              "--sessionRole"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "no_interactive",
            "label": "Fail instead of prompting",
            "type": "boolean",
            "option": [
              "--noInteractive"
            ],
            "sources": [
              "doc"
            ]
          }
        ],
        "task": [
          {
            "id": "by_name",
            "label": "Start a session by name",
            "fields": [
              "session_name",
              "no_interactive"
            ],
            "required": [
              "session_name"
            ]
          },
          {
            "id": "by_id",
            "label": "Start a session by id",
            "fields": [
              "session_id"
            ],
            "required": [
              "session_id"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "session_name",
              "session_id"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "session_role",
              "no_interactive"
            ]
          }
        ]
      },
      {
        "path": [
          "session",
          "stop"
        ],
        "label": "Stop a session",
        "description": "Stop a Leapp session by name or id.",
        "source": [
          {
            "id": "doc",
            "kind": "help",
            "url": "https://github.com/Noovolari/leapp/blob/master/packages/cli/scopes/session.md",
            "revision": "0.1.65",
            "evidence": "$ leapp session stop [SESSIONNAME] [--sessionId <value>] [--sessionRole <value>] [--noInteractive]\nSESSIONNAME  Name of the Leapp session\n--noInteractive        If the specified session is not unique or doesn't exist, throw an error without starting the interactive session selection mode\n--sessionId=<value>    Session Id to identify the session in Leapp, recover it with $leapp session list -x\n--sessionRole=<value>  Session Role of one or more sessions in Leapp\n"
          }
        ],
        "field": [
          {
            "id": "session_name",
            "label": "Session name",
            "description": "Leave empty to choose interactively.",
            "type": "string",
            "position": 0,
            "sources": [
              "doc"
            ]
          },
          {
            "id": "session_id",
            "label": "Session id",
            "description": "Find ids with leapp session list -x.",
            "type": "string",
            "option": [
              "--sessionId"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "session_role",
            "label": "Session role",
            "type": "string",
            "option": [
              "--sessionRole"
            ],
            "sources": [
              "doc"
            ]
          },
          {
            "id": "no_interactive",
            "label": "Fail instead of prompting",
            "type": "boolean",
            "option": [
              "--noInteractive"
            ],
            "sources": [
              "doc"
            ]
          }
        ],
        "task": [
          {
            "id": "by_name",
            "label": "Stop a session by name",
            "fields": [
              "session_name",
              "no_interactive"
            ],
            "required": [
              "session_name"
            ]
          },
          {
            "id": "by_id",
            "label": "Stop a session by id",
            "fields": [
              "session_id"
            ],
            "required": [
              "session_id"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "session_name",
              "session_id"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "session_role",
              "no_interactive"
            ]
          }
        ]
      }
    ]
  }
}
