{
  "id": "skaffold",
  "name": "Skaffold",
  "homepage": "https://skaffold.dev/",
  "description": "A command-line tool that facilitates continuous development for container-based applications.",
  "executables": [
    "skaffold"
  ],
  "dotfiles": {
    "paths": [
      "~/.skaffold/config"
    ],
    "secret": [],
    "side_effect": false
  },
  "commands": {
    "format": 1,
    "label": "Skaffold",
    "description": "Run or develop a Skaffold pipeline. Build, deploy, render and debug have their own commands, not in this form.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": true,
      "short_bundles": false
    },
    "subcommand": [
      {
        "path": [
          "dev"
        ],
        "label": "Develop (watch loop)",
        "description": "Build and deploy on every change, with cleanup on exit.",
        "source": [
          {
            "id": "skaffold-cli",
            "kind": "manual",
            "url": "https://skaffold.dev/docs/references/cli/",
            "revision": "skaffold docs reference",
            "evidence": "skaffold dev\nRun a pipeline in development mode\n    --cleanup=true:\n\tDelete deployments after dev or debug mode is interrupted\n    -f, --filename='skaffold.yaml':\n\tPath or URL to the Skaffold config file\n    --kube-context='':\n    -m, --module=[]:\n    -n, --namespace='':\n    --no-prune=false:\n    --port-forward=user:\n\tPort-forward exposes service ports and container ports within pods and other resources (off, user, services, debug, pods)\n    -p, --profile=[]:\n    -t, --tag='':"
          }
        ],
        "field": [
          {
            "id": "filename",
            "label": "Config file or URL",
            "type": "string",
            "option": [
              "--filename",
              "-f"
            ],
            "sources": [
              "skaffold-cli"
            ]
          },
          {
            "id": "profile",
            "label": "Profiles",
            "type": "string",
            "option": [
              "--profile",
              "-p"
            ],
            "multiple": true,
            "sources": [
              "skaffold-cli"
            ]
          },
          {
            "id": "namespace",
            "label": "Namespace",
            "type": "string",
            "option": [
              "--namespace",
              "-n"
            ],
            "sources": [
              "skaffold-cli"
            ]
          },
          {
            "id": "module",
            "label": "Modules",
            "type": "string",
            "option": [
              "--module",
              "-m"
            ],
            "multiple": true,
            "sources": [
              "skaffold-cli"
            ]
          },
          {
            "id": "kube_context",
            "label": "Kubernetes context",
            "type": "string",
            "option": [
              "--kube-context"
            ],
            "sources": [
              "skaffold-cli"
            ]
          },
          {
            "id": "port_forward",
            "label": "Port forwarding",
            "type": "enum",
            "option": [
              "--port-forward"
            ],
            "choices": [
              {
                "value": "off",
                "label": "off"
              },
              {
                "value": "user",
                "label": "user"
              },
              {
                "value": "services",
                "label": "services"
              },
              {
                "value": "debug",
                "label": "debug"
              },
              {
                "value": "pods",
                "label": "pods"
              }
            ],
            "sources": [
              "skaffold-cli"
            ]
          },
          {
            "id": "tag",
            "label": "Image tag",
            "type": "string",
            "option": [
              "--tag",
              "-t"
            ],
            "sources": [
              "skaffold-cli"
            ]
          },
          {
            "id": "no_prune",
            "label": "Keep built images on exit",
            "type": "boolean",
            "option": [
              "--no-prune"
            ],
            "sources": [
              "skaffold-cli"
            ]
          }
        ],
        "task": [
          {
            "id": "dev",
            "label": "Dev loop with port forwarding",
            "set": {
              "port_forward": [
                "user"
              ]
            },
            "fields": [
              "profile",
              "namespace",
              "port_forward"
            ],
            "required": []
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "filename",
              "profile",
              "namespace",
              "port_forward"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "module",
              "kube_context",
              "tag",
              "no_prune"
            ]
          }
        ]
      },
      {
        "path": [
          "run"
        ],
        "label": "Run once",
        "description": "Build, test and deploy once.",
        "source": [
          {
            "id": "skaffold-cli",
            "kind": "manual",
            "url": "https://skaffold.dev/docs/references/cli/",
            "revision": "skaffold docs reference",
            "evidence": "skaffold run\nRun a pipeline\n  skaffold run --tail\n    -f, --filename='skaffold.yaml':\n    --kube-context='':\n    -m, --module=[]:\n    -n, --namespace='':\n    --port-forward=off:\n\tPort-forward exposes service ports and container ports within pods and other resources (off, user, services, debug, pods)\n    -p, --profile=[]:\n    -t, --tag='':\n    --tail=false:\n\tStream logs from deployed objects"
          }
        ],
        "field": [
          {
            "id": "filename",
            "label": "Config file or URL",
            "type": "string",
            "option": [
              "--filename",
              "-f"
            ],
            "sources": [
              "skaffold-cli"
            ]
          },
          {
            "id": "profile",
            "label": "Profiles",
            "type": "string",
            "option": [
              "--profile",
              "-p"
            ],
            "multiple": true,
            "sources": [
              "skaffold-cli"
            ]
          },
          {
            "id": "namespace",
            "label": "Namespace",
            "type": "string",
            "option": [
              "--namespace",
              "-n"
            ],
            "sources": [
              "skaffold-cli"
            ]
          },
          {
            "id": "module",
            "label": "Modules",
            "type": "string",
            "option": [
              "--module",
              "-m"
            ],
            "multiple": true,
            "sources": [
              "skaffold-cli"
            ]
          },
          {
            "id": "kube_context",
            "label": "Kubernetes context",
            "type": "string",
            "option": [
              "--kube-context"
            ],
            "sources": [
              "skaffold-cli"
            ]
          },
          {
            "id": "port_forward",
            "label": "Port forwarding",
            "type": "enum",
            "option": [
              "--port-forward"
            ],
            "choices": [
              {
                "value": "off",
                "label": "off"
              },
              {
                "value": "user",
                "label": "user"
              },
              {
                "value": "services",
                "label": "services"
              },
              {
                "value": "debug",
                "label": "debug"
              },
              {
                "value": "pods",
                "label": "pods"
              }
            ],
            "sources": [
              "skaffold-cli"
            ]
          },
          {
            "id": "tag",
            "label": "Image tag",
            "type": "string",
            "option": [
              "--tag",
              "-t"
            ],
            "sources": [
              "skaffold-cli"
            ]
          },
          {
            "id": "tail",
            "label": "Stream logs",
            "type": "boolean",
            "option": [
              "--tail"
            ],
            "sources": [
              "skaffold-cli"
            ]
          }
        ],
        "task": [
          {
            "id": "run",
            "label": "Deploy and tail logs",
            "set": {
              "tail": [
                true
              ]
            },
            "fields": [
              "profile",
              "namespace",
              "tail"
            ],
            "required": []
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "filename",
              "profile",
              "namespace",
              "tail",
              "port_forward"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "module",
              "kube_context",
              "tag"
            ]
          }
        ]
      }
    ]
  }
}
