{
  "id": "docker-machine",
  "name": "Docker Machine",
  "homepage": "https://docs.docker.com/retired/",
  "description": "A tool for provisioning and managing Docker hosts.",
  "executables": [
    "docker-machine"
  ],
  "dotfiles": {
    "paths": [
      "~/.docker/machine/"
    ],
    "secret": [
      "~/.docker/machine/machines/*/"
    ]
  },
  "commands": {
    "format": 1,
    "label": "Docker Machine",
    "description": "List, create, remove machines and print their environment. Driver-specific options are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": false,
      "short_bundles": false
    },
    "subcommand": [
      {
        "path": [
          "ls"
        ],
        "label": "List machines",
        "source": [
          {
            "id": "src",
            "kind": "help",
            "url": "https://github.com/docker-archive-public/docker.machine/blob/master/commands/commands.go",
            "evidence": "Name:   \"ls\",\nUsage:  \"List machines\",\nName:  \"quiet, q\",\nUsage: \"Enable quiet mode\",\nName:  \"filter\",\nUsage: \"Filter output based on conditions provided\",\nName:  \"timeout, t\",\nName:  \"format, f\",\nUsage: \"Pretty-print machines using a Go template\",\nflag names: --quiet, -q, --filter, --timeout, -t, --format, -f\n"
          }
        ],
        "field": [
          {
            "id": "quiet",
            "label": "Names only",
            "type": "boolean",
            "option": [
              "--quiet",
              "-q"
            ],
            "sources": [
              "src"
            ]
          },
          {
            "id": "filter",
            "label": "Filters",
            "description": "For example state=Running or driver=virtualbox.",
            "type": "string",
            "option": [
              "--filter"
            ],
            "multiple": true,
            "sources": [
              "src"
            ]
          },
          {
            "id": "timeout",
            "label": "Timeout (seconds)",
            "description": "Default 10.",
            "type": "integer",
            "option": [
              "--timeout",
              "-t"
            ],
            "sources": [
              "src"
            ]
          },
          {
            "id": "format",
            "label": "Go template",
            "type": "string",
            "option": [
              "--format",
              "-f"
            ],
            "sources": [
              "src"
            ]
          }
        ],
        "task": [
          {
            "id": "list",
            "label": "List machines",
            "fields": [
              "quiet",
              "filter"
            ],
            "required": []
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "quiet",
              "filter"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "timeout",
              "format"
            ]
          }
        ]
      },
      {
        "path": [
          "create"
        ],
        "label": "Create a machine",
        "source": [
          {
            "id": "src",
            "kind": "help",
            "url": "https://github.com/docker-archive-public/docker.machine/blob/master/commands/create.go",
            "evidence": "Name:   \"create\",\nUsage:           \"Create a machine\",\nName:   \"driver, d\",\nUsage:  \"Driver to create machine with.\",\nName:  \"engine-opt\",\nName:  \"engine-label\",\nName:  \"swarm\",\nflag names: --driver, -d, --engine-opt, --engine-label\n"
          }
        ],
        "field": [
          {
            "id": "machine",
            "label": "Machine name",
            "type": "string",
            "position": 0,
            "sources": [
              "src"
            ]
          },
          {
            "id": "driver",
            "label": "Driver",
            "type": "string",
            "option": [
              "--driver",
              "-d"
            ],
            "suggestions": [
              {
                "value": "virtualbox",
                "label": "VirtualBox"
              },
              {
                "value": "vmwarefusion",
                "label": "VMware Fusion"
              },
              {
                "value": "hyperv",
                "label": "Hyper-V"
              },
              {
                "value": "generic",
                "label": "Generic SSH host"
              }
            ],
            "sources": [
              "src"
            ]
          },
          {
            "id": "engine_opt",
            "label": "Engine options",
            "description": "flag=value, one per entry.",
            "type": "string",
            "option": [
              "--engine-opt"
            ],
            "multiple": true,
            "sources": [
              "src"
            ]
          },
          {
            "id": "engine_label",
            "label": "Engine labels",
            "type": "string",
            "option": [
              "--engine-label"
            ],
            "multiple": true,
            "sources": [
              "src"
            ]
          }
        ],
        "task": [
          {
            "id": "create",
            "label": "Create a machine",
            "fields": [
              "machine",
              "driver"
            ],
            "required": [
              "machine",
              "driver"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "machine",
              "driver"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "engine_opt",
              "engine_label"
            ]
          }
        ]
      },
      {
        "path": [
          "env"
        ],
        "label": "Show machine environment",
        "source": [
          {
            "id": "src",
            "kind": "help",
            "url": "https://github.com/docker-archive-public/docker.machine/blob/master/commands/commands.go",
            "evidence": "Name:        \"env\",\nUsage:       \"Display the commands to set up the environment for the Docker client\",\nName:  \"shell\",\nUsage: \"Force environment to be configured for a specified shell: [fish, cmd, powershell, tcsh, emacs], default is auto-detect\",\nName:  \"unset, u\",\nUsage: \"Unset variables instead of setting them\",\nName:  \"no-proxy\",\nflag names: --shell, --unset, -u, --no-proxy\n"
          }
        ],
        "field": [
          {
            "id": "machine",
            "label": "Machine name",
            "type": "string",
            "position": 0,
            "sources": [
              "src"
            ]
          },
          {
            "id": "shell",
            "label": "Shell",
            "type": "enum",
            "option": [
              "--shell"
            ],
            "choices": [
              {
                "value": "fish",
                "label": "fish"
              },
              {
                "value": "cmd",
                "label": "cmd"
              },
              {
                "value": "powershell",
                "label": "PowerShell"
              },
              {
                "value": "tcsh",
                "label": "tcsh"
              },
              {
                "value": "emacs",
                "label": "Emacs"
              }
            ],
            "sources": [
              "src"
            ]
          },
          {
            "id": "unset",
            "label": "Unset variables",
            "type": "boolean",
            "option": [
              "--unset",
              "-u"
            ],
            "sources": [
              "src"
            ]
          },
          {
            "id": "no_proxy",
            "label": "Add IP to NO_PROXY",
            "type": "boolean",
            "option": [
              "--no-proxy"
            ],
            "sources": [
              "src"
            ]
          }
        ],
        "task": [
          {
            "id": "env",
            "label": "Show environment",
            "fields": [
              "machine",
              "shell"
            ],
            "required": []
          },
          {
            "id": "unset",
            "label": "Unset environment",
            "fields": [
              "machine",
              "unset"
            ],
            "required": [],
            "set": {
              "unset": [
                true
              ]
            }
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "machine",
              "shell",
              "unset"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "no_proxy"
            ]
          }
        ]
      },
      {
        "path": [
          "rm"
        ],
        "label": "Remove machines",
        "source": [
          {
            "id": "src",
            "kind": "help",
            "url": "https://github.com/docker-archive-public/docker.machine/blob/master/commands/commands.go",
            "evidence": "Name:        \"rm\",\nUsage:       \"Remove a machine\",\nName:  \"force, f\",\nUsage: \"Remove local configuration even if machine cannot be removed, also implies an automatic yes (`-y`)\",\nName:  \"y\",\nUsage: \"Assumes automatic yes to proceed with remove, without prompting further user confirmation\",\nflag names: --force, -f, -y\n"
          }
        ],
        "field": [
          {
            "id": "machines",
            "label": "Machines",
            "type": "string",
            "position": 0,
            "multiple": true,
            "sources": [
              "src"
            ]
          },
          {
            "id": "force",
            "label": "Force",
            "type": "boolean",
            "option": [
              "--force",
              "-f"
            ],
            "effect": "delete",
            "sources": [
              "src"
            ]
          },
          {
            "id": "yes",
            "label": "Assume yes",
            "type": "boolean",
            "option": [
              "-y"
            ],
            "effect": "delete",
            "sources": [
              "src"
            ]
          }
        ],
        "task": [
          {
            "id": "remove",
            "label": "Remove machines",
            "fields": [
              "machines",
              "force"
            ],
            "required": [
              "machines"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "machines",
              "force"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "yes"
            ]
          }
        ]
      }
    ]
  }
}
