{
  "description": "Common Argo CD application jobs. The sync form leaves out multi-source, retry-backoff and server-side-diff tuning options.",
  "name": "argocd",
  "subcommands": [
    {
      "name": "app",
      "subcommands": [
        {
          "name": "sync",
          "description": "Sync an application",
          "options": [
            {
              "names": [
                "--selector",
                "-l"
              ],
              "description": "Sync apps matching this label instead of naming them.",
              "args": {
                "name": "selector",
                "description": "Sync apps matching this label instead of naming them.",
                "isOptional": false
              }
            },
            {
              "names": [
                "--revision"
              ],
              "description": "Revision",
              "args": {
                "name": "revision",
                "isOptional": false
              }
            },
            {
              "names": [
                "--resource"
              ],
              "description": "GROUP:KIND:NAME, or !GROUP:KIND:NAME to exclude.",
              "args": {
                "name": "resource",
                "description": "GROUP:KIND:NAME, or !GROUP:KIND:NAME to exclude.",
                "isOptional": false,
                "isVariadic": true
              },
              "isRepeatable": true
            },
            {
              "names": [
                "--dry-run"
              ],
              "description": "Dry run"
            },
            {
              "names": [
                "--preview-changes"
              ],
              "description": "Preview changes"
            },
            {
              "names": [
                "--prune"
              ],
              "description": "Allow deleting unexpected resources.",
              "isDangerous": true
            },
            {
              "names": [
                "--force"
              ],
              "description": "Force apply",
              "isDangerous": true
            },
            {
              "names": [
                "--replace"
              ],
              "description": "Replace instead of apply",
              "isDangerous": true
            },
            {
              "names": [
                "--server-side"
              ],
              "description": "Server-side apply"
            },
            {
              "names": [
                "--apply-out-of-sync-only"
              ],
              "description": "Only out-of-sync resources"
            },
            {
              "names": [
                "--async"
              ],
              "description": "Do not wait"
            },
            {
              "names": [
                "--timeout"
              ],
              "description": "Timeout (seconds)",
              "args": {
                "name": "timeout",
                "isOptional": false
              }
            }
          ],
          "args": [
            {
              "name": "apps",
              "isOptional": true,
              "isVariadic": true
            }
          ]
        }
      ]
    }
  ]
}
