{
  "name": "airflow",
  "description": "Subcommand",
  "options": [
    {
      "names": [
        "-h",
        "--help"
      ],
      "description": "Show this help message and exit"
    }
  ],
  "subcommands": [
    {
      "name": "celery",
      "description": "Celery components",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ],
      "subcommands": [
        {
          "name": "flower",
          "description": "Start a Celery Flower",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-A",
                "--basic-auth"
              ],
              "description": "Securing Flower with Basic Authentication. Accepts user:password pairs separated by a comma. Example: flower_basic_auth = user1:password1,user2:password2",
              "args": [
                {
                  "name": "basic_auth",
                  "description": "Securing Flower with Basic Authentication. Accepts user:password pairs separated by a comma. Example: flower_basic_auth = user1:password1,user2:password2"
                }
              ]
            },
            {
              "names": [
                "-a",
                "--broker-api"
              ],
              "description": "Broker API",
              "args": [
                {
                  "name": "broker_api",
                  "description": "Broker API"
                }
              ]
            },
            {
              "names": [
                "-D",
                "--daemon"
              ],
              "description": "Daemonize instead of running in the foreground"
            },
            {
              "names": [
                "-c",
                "--flower-conf"
              ],
              "description": "Configuration file for flower",
              "args": [
                {
                  "name": "flower_conf",
                  "description": "Configuration file for flower"
                }
              ]
            },
            {
              "names": [
                "-H",
                "--hostname"
              ],
              "description": "Set the hostname on which to run the server",
              "args": [
                {
                  "name": "hostname",
                  "description": "Set the hostname on which to run the server"
                }
              ]
            },
            {
              "names": [
                "-l",
                "--log-file"
              ],
              "description": "Location of the log file",
              "args": [
                {
                  "name": "log_file",
                  "description": "Location of the log file"
                }
              ]
            },
            {
              "names": [
                "--pid"
              ],
              "description": "PID file location",
              "args": [
                {
                  "name": "pid",
                  "description": "PID file location",
                  "isOptional": true
                }
              ]
            },
            {
              "names": [
                "-p",
                "--port"
              ],
              "description": "The port on which to run the server",
              "args": [
                {
                  "name": "port",
                  "description": "The port on which to run the server"
                }
              ]
            },
            {
              "names": [
                "--stderr"
              ],
              "description": "Redirect stderr to this file",
              "args": [
                {
                  "name": "stderr",
                  "description": "Redirect stderr to this file"
                }
              ]
            },
            {
              "names": [
                "--stdout"
              ],
              "description": "Redirect stdout to this file",
              "args": [
                {
                  "name": "stdout",
                  "description": "Redirect stdout to this file"
                }
              ]
            },
            {
              "names": [
                "-u",
                "--url-prefix"
              ],
              "description": "URL prefix for Flower",
              "args": [
                {
                  "name": "url_prefix",
                  "description": "URL prefix for Flower"
                }
              ]
            }
          ]
        },
        {
          "name": "stop",
          "description": "Stop the Celery worker gracefully",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--pid"
              ],
              "description": "PID file location",
              "args": [
                {
                  "name": "pid",
                  "description": "PID file location",
                  "isOptional": true
                }
              ]
            }
          ]
        },
        {
          "name": "worker",
          "description": "Start a Celery worker node",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-a",
                "--autoscale"
              ],
              "description": "Minimum and Maximum number of worker to autoscale",
              "args": [
                {
                  "name": "autoscale",
                  "description": "Minimum and Maximum number of worker to autoscale"
                }
              ]
            },
            {
              "names": [
                "-H",
                "--celery-hostname"
              ],
              "description": "Set the hostname of celery worker if you have multiple workers on a single machine",
              "args": [
                {
                  "name": "celery_hostname",
                  "description": "Set the hostname of celery worker if you have multiple workers on a single machine"
                }
              ]
            },
            {
              "names": [
                "-c",
                "--concurrency"
              ],
              "description": "The number of worker processes",
              "args": [
                {
                  "name": "concurrency",
                  "description": "The number of worker processes"
                }
              ]
            },
            {
              "names": [
                "-D",
                "--daemon"
              ],
              "description": "Daemonize instead of running in the foreground"
            },
            {
              "names": [
                "-l",
                "--log-file"
              ],
              "description": "Location of the log file",
              "args": [
                {
                  "name": "log_file",
                  "description": "Location of the log file"
                }
              ]
            },
            {
              "names": [
                "--pid"
              ],
              "description": "PID file location",
              "args": [
                {
                  "name": "pid",
                  "description": "PID file location",
                  "isOptional": true
                }
              ]
            },
            {
              "names": [
                "-q",
                "--queues"
              ],
              "description": "Comma delimited list of queues to serve",
              "args": [
                {
                  "name": "queues",
                  "description": "Comma delimited list of queues to serve"
                }
              ]
            },
            {
              "names": [
                "-s",
                "--skip-serve-logs"
              ],
              "description": "Don't start the serve logs process along with the workers"
            },
            {
              "names": [
                "--stderr"
              ],
              "description": "Redirect stderr to this file",
              "args": [
                {
                  "name": "stderr",
                  "description": "Redirect stderr to this file"
                }
              ]
            },
            {
              "names": [
                "--stdout"
              ],
              "description": "Redirect stdout to this file",
              "args": [
                {
                  "name": "stdout",
                  "description": "Redirect stdout to this file"
                }
              ]
            },
            {
              "names": [
                "-u",
                "--umask"
              ],
              "description": "Set the umask of celery worker in daemon mode",
              "args": [
                {
                  "name": "umask",
                  "description": "Set the umask of celery worker in daemon mode"
                }
              ]
            },
            {
              "names": [
                "--without-gossip"
              ],
              "description": "Don't subscribe to other workers events"
            },
            {
              "names": [
                "--without-mingle"
              ],
              "description": "Don't synchronize with other workers at start-up"
            }
          ]
        }
      ]
    },
    {
      "name": "cheat-sheet",
      "description": "Display cheat sheet",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        },
        {
          "names": [
            "-v",
            "--verbose"
          ],
          "description": "Make logging output more verbose"
        }
      ]
    },
    {
      "name": "config",
      "description": "View configuration",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ],
      "subcommands": [
        {
          "name": "get-value",
          "description": "Print the value of the configuration",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            }
          ],
          "args": [
            {
              "name": "section",
              "description": "The section name"
            },
            {
              "name": "option",
              "description": "The option name"
            }
          ]
        },
        {
          "name": "list",
          "description": "List options for the configuration",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--color"
              ],
              "description": "Do emit colored output (default: auto)",
              "args": [
                {
                  "name": "color",
                  "description": "Do emit colored output (default: auto)",
                  "suggestions": [
                    "off",
                    "auto",
                    "on"
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "connections",
      "description": "Manage connections",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ],
      "subcommands": [
        {
          "name": "add",
          "description": "Add a connection",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--conn-description"
              ],
              "description": "Connection description, optional when adding a connection",
              "args": [
                {
                  "name": "conn_description",
                  "description": "Connection description, optional when adding a connection"
                }
              ]
            },
            {
              "names": [
                "--conn-extra"
              ],
              "description": "Connection `Extra` field, optional when adding a connection",
              "args": [
                {
                  "name": "conn_extra",
                  "description": "Connection `Extra` field, optional when adding a connection"
                }
              ]
            },
            {
              "names": [
                "--conn-host"
              ],
              "description": "Connection host, optional when adding a connection",
              "args": [
                {
                  "name": "conn_host",
                  "description": "Connection host, optional when adding a connection"
                }
              ]
            },
            {
              "names": [
                "--conn-json"
              ],
              "description": "Connection JSON, required to add a connection using JSON representation",
              "args": [
                {
                  "name": "conn_json",
                  "description": "Connection JSON, required to add a connection using JSON representation"
                }
              ]
            },
            {
              "names": [
                "--conn-login"
              ],
              "description": "Connection login, optional when adding a connection",
              "args": [
                {
                  "name": "conn_login",
                  "description": "Connection login, optional when adding a connection"
                }
              ]
            },
            {
              "names": [
                "--conn-password"
              ],
              "description": "Connection password, optional when adding a connection",
              "args": [
                {
                  "name": "conn_password",
                  "description": "Connection password, optional when adding a connection"
                }
              ]
            },
            {
              "names": [
                "--conn-port"
              ],
              "description": "Connection port, optional when adding a connection",
              "args": [
                {
                  "name": "conn_port",
                  "description": "Connection port, optional when adding a connection"
                }
              ]
            },
            {
              "names": [
                "--conn-schema"
              ],
              "description": "Connection schema, optional when adding a connection",
              "args": [
                {
                  "name": "conn_schema",
                  "description": "Connection schema, optional when adding a connection"
                }
              ]
            },
            {
              "names": [
                "--conn-type"
              ],
              "description": "Connection type, required to add a connection without conn_uri",
              "args": [
                {
                  "name": "conn_type",
                  "description": "Connection type, required to add a connection without conn_uri"
                }
              ]
            },
            {
              "names": [
                "--conn-uri"
              ],
              "description": "Connection URI, required to add a connection without conn_type",
              "args": [
                {
                  "name": "conn_uri",
                  "description": "Connection URI, required to add a connection without conn_type"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "conn_id",
              "description": "Connection id, required to get/add/delete a connection"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Delete a connection",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--color"
              ],
              "description": "Do emit colored output (default: auto)",
              "args": [
                {
                  "name": "color",
                  "description": "Do emit colored output (default: auto)",
                  "suggestions": [
                    "off",
                    "auto",
                    "on"
                  ]
                }
              ]
            }
          ],
          "args": [
            {
              "name": "conn_id",
              "description": "Connection id, required to get/add/delete a connection"
            }
          ]
        },
        {
          "name": "export",
          "description": "Export all connections",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--file-format"
              ],
              "description": "File format for the export",
              "args": [
                {
                  "name": "file_format",
                  "description": "File format for the export",
                  "suggestions": [
                    "json",
                    "yaml",
                    "env"
                  ]
                }
              ]
            },
            {
              "names": [
                "--format"
              ],
              "description": "Deprecated -- use `--file-format` instead. File format to use for the export",
              "args": [
                {
                  "name": "format",
                  "description": "Deprecated -- use `--file-format` instead. File format to use for the export",
                  "suggestions": [
                    "json",
                    "yaml",
                    "env"
                  ]
                }
              ]
            },
            {
              "names": [
                "--serialization-format"
              ],
              "description": "When exporting as `.env` format, defines how connections should be serialized. Default is `uri`",
              "args": [
                {
                  "name": "serialization_format",
                  "description": "When exporting as `.env` format, defines how connections should be serialized. Default is `uri`",
                  "suggestions": [
                    "json",
                    "uri"
                  ]
                }
              ]
            }
          ],
          "args": [
            {
              "name": "file",
              "description": "Output file path for exporting the connections"
            }
          ]
        },
        {
          "name": "get",
          "description": "Get a connection",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--color"
              ],
              "description": "Do emit colored output (default: auto)",
              "args": [
                {
                  "name": "color",
                  "description": "Do emit colored output (default: auto)",
                  "suggestions": [
                    "off",
                    "auto",
                    "on"
                  ]
                }
              ]
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "conn_id",
              "description": "Connection id, required to get/add/delete a connection"
            }
          ]
        },
        {
          "name": "import",
          "description": "Import connections from a file",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            }
          ],
          "args": [
            {
              "name": "file",
              "description": "Import connections from a file"
            }
          ]
        },
        {
          "name": "list",
          "description": "List connections",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--conn-id"
              ],
              "description": "If passed, only items with the specified connection ID will be displayed",
              "args": [
                {
                  "name": "conn_id",
                  "description": "If passed, only items with the specified connection ID will be displayed"
                }
              ]
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        }
      ]
    },
    {
      "name": "dag-processor",
      "description": "Start a standalone Dag Processor instance",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        },
        {
          "names": [
            "-D",
            "--daemon"
          ],
          "description": "Daemonize instead of running in the foreground"
        },
        {
          "names": [
            "-p",
            "--do-pickle"
          ],
          "description": "Attempt to pickle the DAG object to send over to the workers, instead of letting workers run their version of the code"
        },
        {
          "names": [
            "-l",
            "--log-file"
          ],
          "description": "Location of the log file",
          "args": [
            {
              "name": "log_file",
              "description": "Location of the log file"
            }
          ]
        },
        {
          "names": [
            "-n",
            "--num-runs"
          ],
          "description": "Set the number of runs to execute before exiting",
          "args": [
            {
              "name": "num_runs",
              "description": "Set the number of runs to execute before exiting"
            }
          ]
        },
        {
          "names": [
            "--pid"
          ],
          "description": "PID file location",
          "args": [
            {
              "name": "pid",
              "description": "PID file location",
              "isOptional": true
            }
          ]
        },
        {
          "names": [
            "--stderr"
          ],
          "description": "Redirect stderr to this file",
          "args": [
            {
              "name": "stderr",
              "description": "Redirect stderr to this file"
            }
          ]
        },
        {
          "names": [
            "--stdout"
          ],
          "description": "Redirect stdout to this file",
          "args": [
            {
              "name": "stdout",
              "description": "Redirect stdout to this file"
            }
          ]
        },
        {
          "names": [
            "-S",
            "--subdir"
          ],
          "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
          "args": [
            {
              "name": "subdir",
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
            }
          ]
        }
      ]
    },
    {
      "name": "dags",
      "description": "Manage DAGs",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ],
      "subcommands": [
        {
          "name": "backfill",
          "description": "Run subsections of a DAG for a specified date range",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-c",
                "--conf"
              ],
              "description": "JSON string that gets pickled into the DagRun's conf attribute",
              "args": [
                {
                  "name": "conf",
                  "description": "JSON string that gets pickled into the DagRun's conf attribute"
                }
              ]
            },
            {
              "names": [
                "--continue-on-failures"
              ],
              "description": "If set, the backfill will keep going even if some of the tasks failed"
            },
            {
              "names": [
                "--delay-on-limit"
              ],
              "description": "Amount of time in seconds to wait when the limit on maximum active dag runs (max_active_runs) has been reached before trying to execute a dag run again",
              "args": [
                {
                  "name": "delay_on_limit",
                  "description": "Amount of time in seconds to wait when the limit on maximum active dag runs (max_active_runs) has been reached before trying to execute a dag run again"
                }
              ]
            },
            {
              "names": [
                "-x",
                "--donot-pickle"
              ],
              "description": "Do not attempt to pickle the DAG object to send over to the workers, just tell the workers to run their version of the code"
            },
            {
              "names": [
                "-n",
                "--dry-run"
              ],
              "description": "Perform a dry run for each task. Only renders Template Fields for each task, nothing else"
            },
            {
              "names": [
                "-e",
                "--end-date"
              ],
              "description": "Override end_date YYYY-MM-DD",
              "args": [
                {
                  "name": "end_date",
                  "description": "Override end_date YYYY-MM-DD"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--ignore-dependencies"
              ],
              "description": "Skip upstream tasks, run only the tasks matching the regexp. Only works in conjunction with task_regex"
            },
            {
              "names": [
                "-I",
                "--ignore-first-depends-on-past"
              ],
              "description": "Ignores depends_on_past dependencies for the first set of tasks only (subsequent executions in the backfill DO respect depends_on_past)"
            },
            {
              "names": [
                "-l",
                "--local"
              ],
              "description": "Run the task using the LocalExecutor"
            },
            {
              "names": [
                "-m",
                "--mark-success"
              ],
              "description": "Mark jobs as succeeded without running them"
            },
            {
              "names": [
                "--pool"
              ],
              "description": "Resource pool to use",
              "args": [
                {
                  "name": "pool",
                  "description": "Resource pool to use"
                }
              ]
            },
            {
              "names": [
                "--rerun-failed-tasks"
              ],
              "description": "If set, the backfill will auto-rerun all the failed tasks for the backfill date range instead of throwing exceptions"
            },
            {
              "names": [
                "--reset-dagruns"
              ],
              "description": "If set, the backfill will delete existing backfill-related DAG runs and start anew with fresh, running DAG runs"
            },
            {
              "names": [
                "-B",
                "--run-backwards"
              ],
              "description": "If set, the backfill will run tasks from the most recent day first.  if there are tasks that depend_on_past this option will throw an exception"
            },
            {
              "names": [
                "-s",
                "--start-date"
              ],
              "description": "Override start_date YYYY-MM-DD",
              "args": [
                {
                  "name": "start_date",
                  "description": "Override start_date YYYY-MM-DD"
                }
              ]
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            },
            {
              "names": [
                "-t",
                "--task-regex"
              ],
              "description": "The regex to filter specific task_ids to backfill (optional)",
              "args": [
                {
                  "name": "task_regex",
                  "description": "The regex to filter specific task_ids to backfill (optional)"
                }
              ]
            },
            {
              "names": [
                "--treat-dag-as-regex"
              ],
              "description": "If set, dag_id will be treated as regex instead of an exact string"
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            },
            {
              "names": [
                "-y",
                "--yes"
              ],
              "description": "Do not prompt to confirm. Use with care!"
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            }
          ]
        },
        {
          "name": "delete",
          "description": "Delete all DB records related to the specified DAG",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-y",
                "--yes"
              ],
              "description": "Do not prompt to confirm. Use with care!"
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            }
          ]
        },
        {
          "name": "list",
          "description": "List all the DAGs",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "list-import-errors",
          "description": "List all the DAGs that have import errors",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "list-jobs",
          "description": "List the jobs",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-d",
                "--dag-id"
              ],
              "description": "The id of the dag",
              "args": [
                {
                  "name": "dag_id",
                  "description": "The id of the dag"
                }
              ]
            },
            {
              "names": [
                "--limit"
              ],
              "description": "Return a limited number of records",
              "args": [
                {
                  "name": "limit",
                  "description": "Return a limited number of records"
                }
              ]
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "--state"
              ],
              "description": "Only list the dag runs corresponding to the state",
              "args": [
                {
                  "name": "state",
                  "description": "Only list the dag runs corresponding to the state"
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "list-runs",
          "description": "List DAG runs given a DAG id",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-d",
                "--dag-id"
              ],
              "description": "The id of the dag",
              "isRequired": true,
              "args": [
                {
                  "name": "dag_id",
                  "description": "The id of the dag"
                }
              ]
            },
            {
              "names": [
                "-e",
                "--end-date"
              ],
              "description": "Override end_date YYYY-MM-DD",
              "args": [
                {
                  "name": "end_date",
                  "description": "Override end_date YYYY-MM-DD"
                }
              ]
            },
            {
              "names": [
                "--no-backfill"
              ],
              "description": "Filter all the backfill dagruns given the dag id"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-s",
                "--start-date"
              ],
              "description": "Override start_date YYYY-MM-DD",
              "args": [
                {
                  "name": "start_date",
                  "description": "Override start_date YYYY-MM-DD"
                }
              ]
            },
            {
              "names": [
                "--state"
              ],
              "description": "Only list the dag runs corresponding to the state",
              "args": [
                {
                  "name": "state",
                  "description": "Only list the dag runs corresponding to the state"
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "next-execution",
          "description": "Get the next execution datetimes of a DAG",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-n",
                "--num-executions"
              ],
              "description": "The number of next execution datetimes to show",
              "args": [
                {
                  "name": "num_executions",
                  "description": "The number of next execution datetimes to show"
                }
              ]
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            }
          ]
        },
        {
          "name": "pause",
          "description": "Pause a DAG",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            }
          ]
        },
        {
          "name": "report",
          "description": "Show DagBag loading report",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "reserialize",
          "description": "Reserialize all DAGs by parsing the DagBag files",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--clear-only"
              ],
              "description": "If passed, serialized DAGs will be cleared but not reserialized"
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            }
          ]
        },
        {
          "name": "show",
          "description": "Displays DAG's tasks with their dependencies",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--imgcat"
              ],
              "description": "Displays graph using the imgcat tool"
            },
            {
              "names": [
                "-s",
                "--save"
              ],
              "description": "Saves the result to the indicated file",
              "args": [
                {
                  "name": "save",
                  "description": "Saves the result to the indicated file"
                }
              ]
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            }
          ]
        },
        {
          "name": "show-dependencies",
          "description": "Displays DAGs with their dependencies",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--imgcat"
              ],
              "description": "Displays graph using the imgcat tool"
            },
            {
              "names": [
                "-s",
                "--save"
              ],
              "description": "Saves the result to the indicated file",
              "args": [
                {
                  "name": "save",
                  "description": "Saves the result to the indicated file"
                }
              ]
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            }
          ]
        },
        {
          "name": "state",
          "description": "Get the status of a dag run",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            },
            {
              "name": "execution_date",
              "description": "The execution date of the DAG"
            }
          ]
        },
        {
          "name": "test",
          "description": "Execute one single DagRun",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-c",
                "--conf"
              ],
              "description": "JSON string that gets pickled into the DagRun's conf attribute",
              "args": [
                {
                  "name": "conf",
                  "description": "JSON string that gets pickled into the DagRun's conf attribute"
                }
              ]
            },
            {
              "names": [
                "--imgcat-dagrun"
              ],
              "description": "After completing the dag run, prints a diagram on the screen for the current DAG Run using the imgcat tool.\n"
            },
            {
              "names": [
                "--save-dagrun"
              ],
              "description": "After completing the backfill, saves the diagram for current DAG Run to the indicated file.\n\n",
              "args": [
                {
                  "name": "save_dagrun",
                  "description": "After completing the backfill, saves the diagram for current DAG Run to the indicated file.\n\n"
                }
              ]
            },
            {
              "names": [
                "--show-dagrun"
              ],
              "description": "After completing the backfill, shows the diagram for current DAG Run.\n\nThe diagram is in DOT language\n"
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            },
            {
              "name": "execution_date",
              "description": "The execution date of the DAG (optional)",
              "isOptional": true
            }
          ]
        },
        {
          "name": "trigger",
          "description": "Trigger a DAG run",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-c",
                "--conf"
              ],
              "description": "JSON string that gets pickled into the DagRun's conf attribute",
              "args": [
                {
                  "name": "conf",
                  "description": "JSON string that gets pickled into the DagRun's conf attribute"
                }
              ]
            },
            {
              "names": [
                "-e",
                "--exec-date"
              ],
              "description": "The execution date of the DAG",
              "args": [
                {
                  "name": "exec_date",
                  "description": "The execution date of the DAG"
                }
              ]
            },
            {
              "names": [
                "-r",
                "--run-id"
              ],
              "description": "Helps to identify this run",
              "args": [
                {
                  "name": "run_id",
                  "description": "Helps to identify this run"
                }
              ]
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            }
          ]
        },
        {
          "name": "unpause",
          "description": "Resume a paused DAG",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            }
          ]
        }
      ]
    },
    {
      "name": "db",
      "description": "Database operations",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ],
      "subcommands": [
        {
          "name": "check",
          "description": "Check if the database can be reached",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            }
          ]
        },
        {
          "name": "check-migrations",
          "description": "Check if migration have finished",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-t",
                "--migration-wait-timeout"
              ],
              "description": "Timeout to wait for db to migrate",
              "args": [
                {
                  "name": "migration_wait_timeout",
                  "description": "Timeout to wait for db to migrate"
                }
              ]
            }
          ]
        },
        {
          "name": "clean",
          "description": "Purge old records in metastore tables",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--clean-before-timestamp"
              ],
              "description": "The date or timestamp before which data should be purged.\nIf no timezone info is supplied then dates are assumed to be in airflow default timezone.\nExample: '2022-01-01 00:00:00+01:00'",
              "isRequired": true,
              "args": [
                {
                  "name": "clean_before_timestamp",
                  "description": "The date or timestamp before which data should be purged.\nIf no timezone info is supplied then dates are assumed to be in airflow default timezone.\nExample: '2022-01-01 00:00:00+01:00'"
                }
              ]
            },
            {
              "names": [
                "--dry-run"
              ],
              "description": "Perform a dry run"
            },
            {
              "names": [
                "--skip-archive"
              ],
              "description": "Don't preserve purged records in an archive table"
            },
            {
              "names": [
                "-t",
                "--tables"
              ],
              "description": "Table names to perform maintenance on (use comma-separated list).\nOptions: ['callback_request', 'celery_taskmeta', 'celery_tasksetmeta', 'dag', 'dag_run', 'dataset_event', 'import_error', 'job', 'log', 'rendered_task_instance_fields', 'sla_miss', 'task_fail', 'task_instance', 'task_reschedule', 'xcom']",
              "args": [
                {
                  "name": "tables",
                  "description": "Table names to perform maintenance on (use comma-separated list).\nOptions: ['callback_request', 'celery_taskmeta', 'celery_tasksetmeta', 'dag', 'dag_run', 'dataset_event', 'import_error', 'job', 'log', 'rendered_task_instance_fields', 'sla_miss', 'task_fail', 'task_instance', 'task_reschedule', 'xcom']"
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            },
            {
              "names": [
                "-y",
                "--yes"
              ],
              "description": "Do not prompt to confirm. Use with care!"
            }
          ]
        },
        {
          "name": "downgrade",
          "description": "Downgrade the schema of the metadata database",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--from-revision"
              ],
              "description": "(Optional) If generating sql, may supply a *from* Alembic revision",
              "args": [
                {
                  "name": "from_revision",
                  "description": "(Optional) If generating sql, may supply a *from* Alembic revision"
                }
              ]
            },
            {
              "names": [
                "--from-version"
              ],
              "description": "(Optional) If generating sql, may supply a *from* version",
              "args": [
                {
                  "name": "from_version",
                  "description": "(Optional) If generating sql, may supply a *from* version"
                }
              ]
            },
            {
              "names": [
                "-s",
                "--show-sql-only"
              ],
              "description": "Don't actually run migrations; just print out sql scripts for offline migration. Required if using either `--from-version` or `--from-version`"
            },
            {
              "names": [
                "-r",
                "--to-revision"
              ],
              "description": "The Alembic revision to downgrade to. Note: must provide either `--to-revision` or `--to-version`",
              "args": [
                {
                  "name": "to_revision",
                  "description": "The Alembic revision to downgrade to. Note: must provide either `--to-revision` or `--to-version`"
                }
              ]
            },
            {
              "names": [
                "-n",
                "--to-version"
              ],
              "description": "(Optional) If provided, only run migrations up to this version",
              "args": [
                {
                  "name": "to_version",
                  "description": "(Optional) If provided, only run migrations up to this version"
                }
              ]
            },
            {
              "names": [
                "-y",
                "--yes"
              ],
              "description": "Do not prompt to confirm. Use with care!"
            }
          ]
        },
        {
          "name": "init",
          "description": "Initialize the metadata database",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            }
          ]
        },
        {
          "name": "reset",
          "description": "Burn down and rebuild the metadata database",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-s",
                "--skip-init"
              ],
              "description": "Only remove tables; do not perform db init"
            },
            {
              "names": [
                "-y",
                "--yes"
              ],
              "description": "Do not prompt to confirm. Use with care!"
            }
          ]
        },
        {
          "name": "shell",
          "description": "Runs a shell to access the database",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            }
          ]
        },
        {
          "name": "upgrade",
          "description": "Upgrade the metadata database to latest version",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--from-revision"
              ],
              "description": "(Optional) If generating sql, may supply a *from* Alembic revision",
              "args": [
                {
                  "name": "from_revision",
                  "description": "(Optional) If generating sql, may supply a *from* Alembic revision"
                }
              ]
            },
            {
              "names": [
                "--from-version"
              ],
              "description": "(Optional) If generating sql, may supply a *from* version",
              "args": [
                {
                  "name": "from_version",
                  "description": "(Optional) If generating sql, may supply a *from* version"
                }
              ]
            },
            {
              "names": [
                "-s",
                "--show-sql-only"
              ],
              "description": "Don't actually run migrations; just print out sql scripts for offline migration. Required if using either `--from-version` or `--from-version`"
            },
            {
              "names": [
                "-r",
                "--to-revision"
              ],
              "description": "(Optional) If provided, only run migrations up to and including this Alembic revision",
              "args": [
                {
                  "name": "to_revision",
                  "description": "(Optional) If provided, only run migrations up to and including this Alembic revision"
                }
              ]
            },
            {
              "names": [
                "-n",
                "--to-version"
              ],
              "description": "(Optional) The airflow version to upgrade to. Note: must provide either `--to-revision` or `--to-version`",
              "args": [
                {
                  "name": "to_version",
                  "description": "(Optional) The airflow version to upgrade to. Note: must provide either `--to-revision` or `--to-version`"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "info",
      "description": "Show information about current Airflow and environment",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        },
        {
          "names": [
            "--anonymize"
          ],
          "description": "Minimize any personal identifiable information. Use it when sharing output with others"
        },
        {
          "names": [
            "--file-io"
          ],
          "description": "Send output to file.io service and returns link"
        },
        {
          "names": [
            "-o",
            "--output"
          ],
          "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
          "args": [
            {
              "name": "(table, json, yaml, plain)",
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "suggestions": [
                "table",
                "json",
                "yaml",
                "plain"
              ]
            }
          ]
        },
        {
          "names": [
            "-v",
            "--verbose"
          ],
          "description": "Make logging output more verbose"
        }
      ]
    },
    {
      "name": "jobs",
      "description": "Manage jobs",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ],
      "subcommands": [
        {
          "name": "check",
          "description": "Checks if job(s) are still alive",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--allow-multiple"
              ],
              "description": "If passed, this command will be successful even if multiple matching alive jobs are found"
            },
            {
              "names": [
                "--hostname"
              ],
              "description": "The hostname of job(s) that will be checked",
              "args": [
                {
                  "name": "hostname",
                  "description": "The hostname of job(s) that will be checked"
                }
              ]
            },
            {
              "names": [
                "--job-type"
              ],
              "description": "The type of job(s) that will be checked",
              "args": [
                {
                  "name": "job_type",
                  "description": "The type of job(s) that will be checked",
                  "suggestions": [
                    "BackfillJob",
                    "LocalTaskJob",
                    "SchedulerJob",
                    "TriggererJob"
                  ]
                }
              ]
            },
            {
              "names": [
                "--limit"
              ],
              "description": "The number of recent jobs that will be checked. To disable limit, set 0",
              "args": [
                {
                  "name": "limit",
                  "description": "The number of recent jobs that will be checked. To disable limit, set 0"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "kerberos",
      "description": "Start a kerberos ticket renewer",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        },
        {
          "names": [
            "-D",
            "--daemon"
          ],
          "description": "Daemonize instead of running in the foreground"
        },
        {
          "names": [
            "-k",
            "--keytab"
          ],
          "description": "Keytab",
          "args": [
            {
              "name": "keytab",
              "description": "Keytab",
              "isOptional": true
            }
          ]
        },
        {
          "names": [
            "-l",
            "--log-file"
          ],
          "description": "Location of the log file",
          "args": [
            {
              "name": "log_file",
              "description": "Location of the log file"
            }
          ]
        },
        {
          "names": [
            "--pid"
          ],
          "description": "PID file location",
          "args": [
            {
              "name": "pid",
              "description": "PID file location",
              "isOptional": true
            }
          ]
        },
        {
          "names": [
            "--stderr"
          ],
          "description": "Redirect stderr to this file",
          "args": [
            {
              "name": "stderr",
              "description": "Redirect stderr to this file"
            }
          ]
        },
        {
          "names": [
            "--stdout"
          ],
          "description": "Redirect stdout to this file",
          "args": [
            {
              "name": "stdout",
              "description": "Redirect stdout to this file"
            }
          ]
        }
      ],
      "args": [
        {
          "name": "principal",
          "description": "Kerberos principal",
          "isOptional": true
        }
      ]
    },
    {
      "name": "kubernetes",
      "description": "Tools to help run the KubernetesExecutor",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ],
      "subcommands": [
        {
          "name": "cleanup-pods",
          "description": "Clean up Kubernetes pods (created by KubernetesExecutor/KubernetesPodOperator) in evicted/failed/succeeded/pending states",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--min-pending-minutes"
              ],
              "description": "Pending pods created before the time interval are to be cleaned up, measured in minutes. Default value is 30(m). The minimum value is 5(m)",
              "args": [
                {
                  "name": "min_pending_minutes",
                  "description": "Pending pods created before the time interval are to be cleaned up, measured in minutes. Default value is 30(m). The minimum value is 5(m)"
                }
              ]
            },
            {
              "names": [
                "--namespace"
              ],
              "description": "Kubernetes Namespace. Default value is `[kubernetes] namespace` in configuration",
              "args": [
                {
                  "name": "namespace",
                  "description": "Kubernetes Namespace. Default value is `[kubernetes] namespace` in configuration"
                }
              ]
            }
          ]
        },
        {
          "name": "generate-dag-yaml",
          "description": "Generate YAML files for all tasks in DAG. Useful for debugging tasks without launching into a cluster",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output-path"
              ],
              "description": "The output for generated yaml files",
              "args": [
                {
                  "name": "output_path",
                  "description": "The output for generated yaml files"
                }
              ]
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            },
            {
              "name": "execution_date",
              "description": "The execution date of the DAG"
            }
          ]
        }
      ]
    },
    {
      "name": "plugins",
      "description": "Dump information about loaded plugins",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        },
        {
          "names": [
            "-o",
            "--output"
          ],
          "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
          "args": [
            {
              "name": "(table, json, yaml, plain)",
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "suggestions": [
                "table",
                "json",
                "yaml",
                "plain"
              ]
            }
          ]
        },
        {
          "names": [
            "-v",
            "--verbose"
          ],
          "description": "Make logging output more verbose"
        }
      ]
    },
    {
      "name": "pools",
      "description": "Manage pools",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ],
      "subcommands": [
        {
          "name": "delete",
          "description": "Delete pool",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "NAME",
              "description": "Pool name"
            }
          ]
        },
        {
          "name": "export",
          "description": "Export all pools",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            }
          ],
          "args": [
            {
              "name": "FILEPATH",
              "description": "Export all pools to JSON file"
            }
          ]
        },
        {
          "name": "get",
          "description": "Get pool size",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "NAME",
              "description": "Pool name"
            }
          ]
        },
        {
          "name": "import",
          "description": "Import pools",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "FILEPATH",
              "description": "Import pools from JSON file. Example format::\n\n    {\n        \"pool_1\": {\"slots\": 5, \"description\": \"\"},\n        \"pool_2\": {\"slots\": 10, \"description\": \"test\"}\n    }"
            }
          ]
        },
        {
          "name": "list",
          "description": "List pools",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "set",
          "description": "Configure pool",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "NAME",
              "description": "Pool name"
            },
            {
              "name": "slots",
              "description": "Pool slots"
            },
            {
              "name": "description",
              "description": "Pool description"
            }
          ]
        }
      ]
    },
    {
      "name": "providers",
      "description": "Display providers",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ],
      "subcommands": [
        {
          "name": "auth",
          "description": "Get information about API auth backends provided",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "behaviours",
          "description": "Get information about registered connection types with custom behaviours",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "get",
          "description": "Get detailed information about a provider",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--color"
              ],
              "description": "Do emit colored output (default: auto)",
              "args": [
                {
                  "name": "color",
                  "description": "Do emit colored output (default: auto)",
                  "suggestions": [
                    "off",
                    "auto",
                    "on"
                  ]
                }
              ]
            },
            {
              "names": [
                "-f",
                "--full"
              ],
              "description": "Full information about the provider, including documentation information"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "provider_name",
              "description": "Provider name, required to get provider information"
            }
          ]
        },
        {
          "name": "hooks",
          "description": "List registered provider hooks",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "links",
          "description": "List extra links registered by the providers",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "list",
          "description": "List installed providers",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "logging",
          "description": "Get information about task logging handlers provided",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "secrets",
          "description": "Get information about secrets backends provided",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "widgets",
          "description": "Get information about registered connection form widgets",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        }
      ]
    },
    {
      "name": "roles",
      "description": "Manage roles",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ],
      "subcommands": [
        {
          "name": "create",
          "description": "Create role",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "role",
              "description": "The name of a role",
              "isOptional": true,
              "isVariadic": true
            }
          ]
        },
        {
          "name": "delete",
          "description": "Delete role",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "role",
              "description": "The name of a role",
              "isOptional": true,
              "isVariadic": true
            }
          ]
        },
        {
          "name": "export",
          "description": "Export roles (without permissions) from db to JSON file",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-p",
                "--pretty"
              ],
              "description": "Format output JSON file by sorting role names and indenting by 4 spaces"
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "file",
              "description": "Export all roles to JSON file"
            }
          ]
        },
        {
          "name": "import",
          "description": "Import roles (without permissions) from JSON file to db",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "file",
              "description": "Import roles from JSON file"
            }
          ]
        },
        {
          "name": "list",
          "description": "List roles",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        }
      ]
    },
    {
      "name": "rotate-fernet-key",
      "description": "Rotate encrypted connection credentials and variables",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ]
    },
    {
      "name": "scheduler",
      "description": "Start a scheduler instance",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        },
        {
          "names": [
            "-D",
            "--daemon"
          ],
          "description": "Daemonize instead of running in the foreground"
        },
        {
          "names": [
            "-p",
            "--do-pickle"
          ],
          "description": "Attempt to pickle the DAG object to send over to the workers, instead of letting workers run their version of the code"
        },
        {
          "names": [
            "-l",
            "--log-file"
          ],
          "description": "Location of the log file",
          "args": [
            {
              "name": "log_file",
              "description": "Location of the log file"
            }
          ]
        },
        {
          "names": [
            "-n",
            "--num-runs"
          ],
          "description": "Set the number of runs to execute before exiting",
          "args": [
            {
              "name": "num_runs",
              "description": "Set the number of runs to execute before exiting"
            }
          ]
        },
        {
          "names": [
            "--pid"
          ],
          "description": "PID file location",
          "args": [
            {
              "name": "pid",
              "description": "PID file location",
              "isOptional": true
            }
          ]
        },
        {
          "names": [
            "-s",
            "--skip-serve-logs"
          ],
          "description": "Don't start the serve logs process along with the workers"
        },
        {
          "names": [
            "--stderr"
          ],
          "description": "Redirect stderr to this file",
          "args": [
            {
              "name": "stderr",
              "description": "Redirect stderr to this file"
            }
          ]
        },
        {
          "names": [
            "--stdout"
          ],
          "description": "Redirect stdout to this file",
          "args": [
            {
              "name": "stdout",
              "description": "Redirect stdout to this file"
            }
          ]
        },
        {
          "names": [
            "-S",
            "--subdir"
          ],
          "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
          "args": [
            {
              "name": "subdir",
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
            }
          ]
        }
      ]
    },
    {
      "name": "standalone",
      "description": "Run an all-in-one copy of Airflow",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ]
    },
    {
      "name": "sync-perm",
      "description": "Update permissions for existing roles and optionally DAGs",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        },
        {
          "names": [
            "--include-dags"
          ],
          "description": "If passed, DAG specific permissions will also be synced"
        }
      ]
    },
    {
      "name": "tasks",
      "description": "Manage tasks",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ],
      "subcommands": [
        {
          "name": "clear",
          "description": "Clear a set of task instance, as if they never ran",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-R",
                "--dag-regex"
              ],
              "description": "Search dag_id as regex instead of exact string"
            },
            {
              "names": [
                "-d",
                "--downstream"
              ],
              "description": "Include downstream tasks"
            },
            {
              "names": [
                "-e",
                "--end-date"
              ],
              "description": "Override end_date YYYY-MM-DD",
              "args": [
                {
                  "name": "end_date",
                  "description": "Override end_date YYYY-MM-DD"
                }
              ]
            },
            {
              "names": [
                "-X",
                "--exclude-parentdag"
              ],
              "description": "Exclude ParentDAGS if the task cleared is a part of a SubDAG"
            },
            {
              "names": [
                "-x",
                "--exclude-subdags"
              ],
              "description": "Exclude subdags"
            },
            {
              "names": [
                "-f",
                "--only-failed"
              ],
              "description": "Only failed jobs"
            },
            {
              "names": [
                "-r",
                "--only-running"
              ],
              "description": "Only running jobs"
            },
            {
              "names": [
                "-s",
                "--start-date"
              ],
              "description": "Override start_date YYYY-MM-DD",
              "args": [
                {
                  "name": "start_date",
                  "description": "Override start_date YYYY-MM-DD"
                }
              ]
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            },
            {
              "names": [
                "-t",
                "--task-regex"
              ],
              "description": "The regex to filter specific task_ids to backfill (optional)",
              "args": [
                {
                  "name": "task_regex",
                  "description": "The regex to filter specific task_ids to backfill (optional)"
                }
              ]
            },
            {
              "names": [
                "-u",
                "--upstream"
              ],
              "description": "Include upstream tasks"
            },
            {
              "names": [
                "-y",
                "--yes"
              ],
              "description": "Do not prompt to confirm. Use with care!"
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            }
          ]
        },
        {
          "name": "failed-deps",
          "description": "Returns the unmet dependencies for a task instance",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--map-index"
              ],
              "description": "Mapped task index",
              "args": [
                {
                  "name": "map_index",
                  "description": "Mapped task index"
                }
              ]
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            },
            {
              "name": "task_id",
              "description": "The id of the task"
            },
            {
              "name": "execution_date_or_run_id",
              "description": "The execution_date of the DAG or run_id of the DAGRun"
            }
          ]
        },
        {
          "name": "list",
          "description": "List the tasks within a DAG",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            },
            {
              "names": [
                "-t",
                "--tree"
              ],
              "description": "Tree view"
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            }
          ]
        },
        {
          "name": "render",
          "description": "Render a task instance's template(s)",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--map-index"
              ],
              "description": "Mapped task index",
              "args": [
                {
                  "name": "map_index",
                  "description": "Mapped task index"
                }
              ]
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            },
            {
              "name": "task_id",
              "description": "The id of the task"
            },
            {
              "name": "execution_date_or_run_id",
              "description": "The execution_date of the DAG or run_id of the DAGRun"
            }
          ]
        },
        {
          "name": "run",
          "description": "Run a single task instance",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--cfg-path"
              ],
              "description": "Path to config file to use instead of airflow.cfg",
              "args": [
                {
                  "name": "cfg_path",
                  "description": "Path to config file to use instead of airflow.cfg"
                }
              ]
            },
            {
              "names": [
                "-f",
                "--force"
              ],
              "description": "Ignore previous task instance state, rerun regardless if task already succeeded/failed"
            },
            {
              "names": [
                "-A",
                "--ignore-all-dependencies"
              ],
              "description": "Ignores all non-critical dependencies, including ignore_ti_state and ignore_task_deps"
            },
            {
              "names": [
                "-i",
                "--ignore-dependencies"
              ],
              "description": "Ignore task-specific dependencies, e.g. upstream, depends_on_past, and retry delay dependencies"
            },
            {
              "names": [
                "-I",
                "--ignore-depends-on-past"
              ],
              "description": "Ignore depends_on_past dependencies (but respect upstream dependencies)"
            },
            {
              "names": [
                "-N",
                "--interactive"
              ],
              "description": "Do not capture standard output and error streams (useful for interactive debugging)"
            },
            {
              "names": [
                "-j",
                "--job-id"
              ],
              "hidden": true,
              "args": [
                {
                  "name": "job_id"
                }
              ]
            },
            {
              "names": [
                "-l",
                "--local"
              ],
              "description": "Run the task using the LocalExecutor"
            },
            {
              "names": [
                "--map-index"
              ],
              "description": "Mapped task index",
              "args": [
                {
                  "name": "map_index",
                  "description": "Mapped task index"
                }
              ]
            },
            {
              "names": [
                "-m",
                "--mark-success"
              ],
              "description": "Mark jobs as succeeded without running them"
            },
            {
              "names": [
                "--no-shut-down-logging"
              ],
              "hidden": true
            },
            {
              "names": [
                "-p",
                "--pickle"
              ],
              "description": "Serialized pickle object of the entire dag (used internally)",
              "args": [
                {
                  "name": "pickle",
                  "description": "Serialized pickle object of the entire dag (used internally)"
                }
              ]
            },
            {
              "names": [
                "--pool"
              ],
              "description": "Resource pool to use",
              "args": [
                {
                  "name": "pool",
                  "description": "Resource pool to use"
                }
              ]
            },
            {
              "names": [
                "-r",
                "--raw"
              ],
              "hidden": true
            },
            {
              "names": [
                "--ship-dag"
              ],
              "description": "Pickles (serializes) the DAG and ships it to the worker"
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            },
            {
              "name": "task_id",
              "description": "The id of the task"
            },
            {
              "name": "execution_date_or_run_id",
              "description": "The execution_date of the DAG or run_id of the DAGRun"
            }
          ]
        },
        {
          "name": "state",
          "description": "Get the status of a task instance",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "--map-index"
              ],
              "description": "Mapped task index",
              "args": [
                {
                  "name": "map_index",
                  "description": "Mapped task index"
                }
              ]
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            },
            {
              "name": "task_id",
              "description": "The id of the task"
            },
            {
              "name": "execution_date_or_run_id",
              "description": "The execution_date of the DAG or run_id of the DAGRun"
            }
          ]
        },
        {
          "name": "states-for-dag-run",
          "description": "Get the status of all task instances in a dag run",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            },
            {
              "name": "execution_date_or_run_id",
              "description": "The execution_date of the DAG or run_id of the DAGRun"
            }
          ]
        },
        {
          "name": "test",
          "description": "Test a task instance",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-n",
                "--dry-run"
              ],
              "description": "Perform a dry run for each task. Only renders Template Fields for each task, nothing else"
            },
            {
              "names": [
                "--env-vars"
              ],
              "description": "Set env var in both parsing time and runtime for each of entry supplied in a JSON dict",
              "args": [
                {
                  "name": "env_vars",
                  "description": "Set env var in both parsing time and runtime for each of entry supplied in a JSON dict"
                }
              ]
            },
            {
              "names": [
                "--map-index"
              ],
              "description": "Mapped task index",
              "args": [
                {
                  "name": "map_index",
                  "description": "Mapped task index"
                }
              ]
            },
            {
              "names": [
                "-m",
                "--post-mortem"
              ],
              "description": "Open debugger on uncaught exception"
            },
            {
              "names": [
                "-S",
                "--subdir"
              ],
              "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'",
              "args": [
                {
                  "name": "subdir",
                  "description": "File location or directory from which to look for the dag. Defaults to '[AIRFLOW_HOME]/dags' where [AIRFLOW_HOME] is the value you set for 'AIRFLOW_HOME' config you set in 'airflow.cfg'"
                }
              ]
            },
            {
              "names": [
                "-t",
                "--task-params"
              ],
              "description": "Sends a JSON params dict to the task",
              "args": [
                {
                  "name": "task_params",
                  "description": "Sends a JSON params dict to the task"
                }
              ]
            }
          ],
          "args": [
            {
              "name": "dag_id",
              "description": "The id of the dag"
            },
            {
              "name": "task_id",
              "description": "The id of the task"
            },
            {
              "name": "execution_date_or_run_id",
              "description": "The execution_date of the DAG or run_id of the DAGRun (optional)",
              "isOptional": true
            }
          ]
        }
      ]
    },
    {
      "name": "triggerer",
      "description": "Start a triggerer instance",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        },
        {
          "names": [
            "--capacity"
          ],
          "description": "The maximum number of triggers that a Triggerer will run at one time",
          "args": [
            {
              "name": "capacity",
              "description": "The maximum number of triggers that a Triggerer will run at one time"
            }
          ]
        },
        {
          "names": [
            "-D",
            "--daemon"
          ],
          "description": "Daemonize instead of running in the foreground"
        },
        {
          "names": [
            "-l",
            "--log-file"
          ],
          "description": "Location of the log file",
          "args": [
            {
              "name": "log_file",
              "description": "Location of the log file"
            }
          ]
        },
        {
          "names": [
            "--pid"
          ],
          "description": "PID file location",
          "args": [
            {
              "name": "pid",
              "description": "PID file location",
              "isOptional": true
            }
          ]
        },
        {
          "names": [
            "--stderr"
          ],
          "description": "Redirect stderr to this file",
          "args": [
            {
              "name": "stderr",
              "description": "Redirect stderr to this file"
            }
          ]
        },
        {
          "names": [
            "--stdout"
          ],
          "description": "Redirect stdout to this file",
          "args": [
            {
              "name": "stdout",
              "description": "Redirect stdout to this file"
            }
          ]
        }
      ]
    },
    {
      "name": "users",
      "description": "Manage users",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ],
      "subcommands": [
        {
          "name": "add-role",
          "description": "Add role to a user",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-e",
                "--email"
              ],
              "description": "Email of the user",
              "args": [
                {
                  "name": "email",
                  "description": "Email of the user"
                }
              ]
            },
            {
              "names": [
                "-r",
                "--role"
              ],
              "description": "Role of the user. Existing roles include Admin, User, Op, Viewer, and Public",
              "isRequired": true,
              "args": [
                {
                  "name": "role",
                  "description": "Role of the user. Existing roles include Admin, User, Op, Viewer, and Public"
                }
              ]
            },
            {
              "names": [
                "-u",
                "--username"
              ],
              "description": "Username of the user",
              "args": [
                {
                  "name": "username",
                  "description": "Username of the user"
                }
              ]
            }
          ]
        },
        {
          "name": "create",
          "description": "Create a user",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-e",
                "--email"
              ],
              "description": "Email of the user",
              "isRequired": true,
              "args": [
                {
                  "name": "email",
                  "description": "Email of the user"
                }
              ]
            },
            {
              "names": [
                "-f",
                "--firstname"
              ],
              "description": "First name of the user",
              "isRequired": true,
              "args": [
                {
                  "name": "firstname",
                  "description": "First name of the user"
                }
              ]
            },
            {
              "names": [
                "-l",
                "--lastname"
              ],
              "description": "Last name of the user",
              "isRequired": true,
              "args": [
                {
                  "name": "lastname",
                  "description": "Last name of the user"
                }
              ]
            },
            {
              "names": [
                "-p",
                "--password"
              ],
              "description": "Password of the user, required to create a user without --use-random-password",
              "args": [
                {
                  "name": "password",
                  "description": "Password of the user, required to create a user without --use-random-password"
                }
              ]
            },
            {
              "names": [
                "-r",
                "--role"
              ],
              "description": "Role of the user. Existing roles include Admin, User, Op, Viewer, and Public",
              "isRequired": true,
              "args": [
                {
                  "name": "role",
                  "description": "Role of the user. Existing roles include Admin, User, Op, Viewer, and Public"
                }
              ]
            },
            {
              "names": [
                "--use-random-password"
              ],
              "description": "Do not prompt for password. Use random string instead. Required to create a user without --password"
            },
            {
              "names": [
                "-u",
                "--username"
              ],
              "description": "Username of the user",
              "isRequired": true,
              "args": [
                {
                  "name": "username",
                  "description": "Username of the user"
                }
              ]
            }
          ]
        },
        {
          "name": "delete",
          "description": "Delete a user",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-e",
                "--email"
              ],
              "description": "Email of the user",
              "args": [
                {
                  "name": "email",
                  "description": "Email of the user"
                }
              ]
            },
            {
              "names": [
                "-u",
                "--username"
              ],
              "description": "Username of the user",
              "args": [
                {
                  "name": "username",
                  "description": "Username of the user"
                }
              ]
            }
          ]
        },
        {
          "name": "export",
          "description": "Export all users",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            }
          ],
          "args": [
            {
              "name": "FILEPATH",
              "description": "Export all users to JSON file"
            }
          ]
        },
        {
          "name": "import",
          "description": "Import users",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            }
          ],
          "args": [
            {
              "name": "FILEPATH",
              "description": "Import users from JSON file. Example format::\n\n    [\n        {\n            \"email\": \"foo@bar.org\",\n            \"firstname\": \"Jon\",\n            \"lastname\": \"Doe\",\n            \"roles\": [\"Public\"],\n            \"username\": \"jondoe\"\n        }\n    ]"
            }
          ]
        },
        {
          "name": "list",
          "description": "List users",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "remove-role",
          "description": "Remove role from a user",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-e",
                "--email"
              ],
              "description": "Email of the user",
              "args": [
                {
                  "name": "email",
                  "description": "Email of the user"
                }
              ]
            },
            {
              "names": [
                "-r",
                "--role"
              ],
              "description": "Role of the user. Existing roles include Admin, User, Op, Viewer, and Public",
              "isRequired": true,
              "args": [
                {
                  "name": "role",
                  "description": "Role of the user. Existing roles include Admin, User, Op, Viewer, and Public"
                }
              ]
            },
            {
              "names": [
                "-u",
                "--username"
              ],
              "description": "Username of the user",
              "args": [
                {
                  "name": "username",
                  "description": "Username of the user"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "variables",
      "description": "Manage variables",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ],
      "subcommands": [
        {
          "name": "delete",
          "description": "Delete variable",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            }
          ],
          "args": [
            {
              "name": "key",
              "description": "Variable key"
            }
          ]
        },
        {
          "name": "export",
          "description": "Export all variables",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            }
          ],
          "args": [
            {
              "name": "file",
              "description": "Export all variables to JSON file"
            }
          ]
        },
        {
          "name": "get",
          "description": "Get variable",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-d",
                "--default"
              ],
              "description": "Default value returned if variable does not exist",
              "args": [
                {
                  "name": "VAL",
                  "description": "Default value returned if variable does not exist"
                }
              ]
            },
            {
              "names": [
                "-j",
                "--json"
              ],
              "description": "Deserialize JSON variable"
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ],
          "args": [
            {
              "name": "key",
              "description": "Variable key"
            }
          ]
        },
        {
          "name": "import",
          "description": "Import variables",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            }
          ],
          "args": [
            {
              "name": "file",
              "description": "Import variables from JSON file"
            }
          ]
        },
        {
          "name": "list",
          "description": "List variables",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-o",
                "--output"
              ],
              "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
              "args": [
                {
                  "name": "(table, json, yaml, plain)",
                  "description": "Output format. Allowed values: json, yaml, plain, table (default: table)",
                  "suggestions": [
                    "table",
                    "json",
                    "yaml",
                    "plain"
                  ]
                }
              ]
            },
            {
              "names": [
                "-v",
                "--verbose"
              ],
              "description": "Make logging output more verbose"
            }
          ]
        },
        {
          "name": "set",
          "description": "Set variable",
          "options": [
            {
              "names": [
                "-h",
                "--help"
              ],
              "description": "Show this help message and exit"
            },
            {
              "names": [
                "-j",
                "--json"
              ],
              "description": "Serialize JSON variable"
            }
          ],
          "args": [
            {
              "name": "key",
              "description": "Variable key"
            },
            {
              "name": "VALUE",
              "description": "Variable value"
            }
          ]
        }
      ]
    },
    {
      "name": "version",
      "description": "Show the version",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        }
      ]
    },
    {
      "name": "webserver",
      "description": "Start a Airflow webserver instance",
      "options": [
        {
          "names": [
            "-h",
            "--help"
          ],
          "description": "Show this help message and exit"
        },
        {
          "names": [
            "-A",
            "--access-logfile"
          ],
          "description": "The logfile to store the webserver access log. Use '-' to print to stderr",
          "args": [
            {
              "name": "access_logfile",
              "description": "The logfile to store the webserver access log. Use '-' to print to stderr"
            }
          ]
        },
        {
          "names": [
            "-L",
            "--access-logformat"
          ],
          "description": "The access log format for gunicorn logs",
          "args": [
            {
              "name": "access_logformat",
              "description": "The access log format for gunicorn logs"
            }
          ]
        },
        {
          "names": [
            "-D",
            "--daemon"
          ],
          "description": "Daemonize instead of running in the foreground"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Use the server that ships with Flask in debug mode"
        },
        {
          "names": [
            "-E",
            "--error-logfile"
          ],
          "description": "The logfile to store the webserver error log. Use '-' to print to stderr",
          "args": [
            {
              "name": "error_logfile",
              "description": "The logfile to store the webserver error log. Use '-' to print to stderr"
            }
          ]
        },
        {
          "names": [
            "-H",
            "--hostname"
          ],
          "description": "Set the hostname on which to run the web server",
          "args": [
            {
              "name": "hostname",
              "description": "Set the hostname on which to run the web server"
            }
          ]
        },
        {
          "names": [
            "-l",
            "--log-file"
          ],
          "description": "Location of the log file",
          "args": [
            {
              "name": "log_file",
              "description": "Location of the log file"
            }
          ]
        },
        {
          "names": [
            "--pid"
          ],
          "description": "PID file location",
          "args": [
            {
              "name": "pid",
              "description": "PID file location",
              "isOptional": true
            }
          ]
        },
        {
          "names": [
            "-p",
            "--port"
          ],
          "description": "The port on which to run the server",
          "args": [
            {
              "name": "port",
              "description": "The port on which to run the server"
            }
          ]
        },
        {
          "names": [
            "--ssl-cert"
          ],
          "description": "Path to the SSL certificate for the webserver",
          "args": [
            {
              "name": "ssl_cert",
              "description": "Path to the SSL certificate for the webserver"
            }
          ]
        },
        {
          "names": [
            "--ssl-key"
          ],
          "description": "Path to the key to use with the SSL certificate",
          "args": [
            {
              "name": "ssl_key",
              "description": "Path to the key to use with the SSL certificate"
            }
          ]
        },
        {
          "names": [
            "--stderr"
          ],
          "description": "Redirect stderr to this file",
          "args": [
            {
              "name": "stderr",
              "description": "Redirect stderr to this file"
            }
          ]
        },
        {
          "names": [
            "--stdout"
          ],
          "description": "Redirect stdout to this file",
          "args": [
            {
              "name": "stdout",
              "description": "Redirect stdout to this file"
            }
          ]
        },
        {
          "names": [
            "-t",
            "--worker-timeout"
          ],
          "description": "The timeout for waiting on webserver workers",
          "args": [
            {
              "name": "worker_timeout",
              "description": "The timeout for waiting on webserver workers"
            }
          ]
        },
        {
          "names": [
            "-k",
            "--workerclass"
          ],
          "description": "The worker class to use for Gunicorn",
          "args": [
            {
              "name": "workerclass",
              "description": "The worker class to use for Gunicorn",
              "suggestions": [
                "sync",
                "eventlet",
                "gevent",
                "tornado"
              ]
            }
          ]
        },
        {
          "names": [
            "-w",
            "--workers"
          ],
          "description": "Number of workers to run the webserver on",
          "args": [
            {
              "name": "workers",
              "description": "Number of workers to run the webserver on"
            }
          ]
        }
      ]
    }
  ]
}
