{
  "repo": "tidbcloud/infra-provider",
  "binary": "agent",
  "binary_path": "cluster-agent/cmd/agent/main.go",
  "dependencies": {
    "ClusterAgentGateway.GatewayRoutes": {
      "infrastructure": {},
      "services": []
    },
    "ClusterAgentGateway.healthz": {
      "infrastructure": {},
      "services": []
    },
    "ClusterAgentGateway.ProxyEntry": {
      "infrastructure": {},
      "services": []
    },
    "ClusterAgentGRPC.ClusterAgentService": {
      "infrastructure": {
        "kubernetes": {
          "conditions": [
            "Always"
          ],
          "operations": [
            {
              "operation": "Kubernetes API access to dataplane resources",
              "trigger": "Serve cluster agent operations",
              "implementation": "service.NewAgentService(dataplaneCli, opts...)"
            }
          ]
        },
        "cloud-provider": {
          "conditions": [
            "Provider-specific"
          ],
          "operations": [
            {
              "operation": "Node restart operations",
              "trigger": "Restart cloud nodes or cluster components",
              "implementation": "service.NewAWSNodeRestarter / NewGCPNodeRestarter / NewAzureNodeRestarter / NewKindNodeRestarter"
            }
          ]
        }
      },
      "services": []
    },
    "ClusterAgentGRPC.CertService": {
      "infrastructure": {
        "kubernetes": {
          "conditions": [
            "Always"
          ],
          "operations": [
            {
              "operation": "Read and mutate cert-manager/TiDB Operator resources",
              "trigger": "Serve certificate operations",
              "implementation": "service.NewCertService(dataplaneCli)"
            }
          ]
        }
      },
      "services": []
    },
    "ClusterAgentGRPC.CdcAgentService": {
      "infrastructure": {
        "kubernetes": {
          "conditions": [
            "Always"
          ],
          "operations": [
            {
              "operation": "Read and mutate CDC resources",
              "trigger": "Serve CDC agent operations",
              "implementation": "service.NewCdcAgentService(dataplaneCli)"
            }
          ]
        }
      },
      "services": []
    },
    "ClusterAgentGRPC.OperatorV2Service": {
      "infrastructure": {
        "kubernetes": {
          "conditions": [
            "Always"
          ],
          "operations": [
            {
              "operation": "Read and mutate advanced-statefulset and TiDB Operator v2 resources",
              "trigger": "Serve operator v2 APIs",
              "implementation": "service.NewOperatorV2Service(dataplaneCli)"
            }
          ]
        }
      },
      "services": []
    },
    "ClusterAgentGRPC.Health": {
      "infrastructure": {},
      "services": []
    }
  }
}
