{
  "repo": "tidbcloud/cloud-provider-aws",
  "binary": "aws-cloud-controller-manager",
  "binary_path": "cmd/aws-cloud-controller-manager/main.go",
  "dependencies": {
    "CloudControllerManager.Run": {
      "infrastructure": {
        "kubernetes": {
          "conditions": [
            "Always"
          ],
          "operations": [
            {
              "operation": "Watch Nodes, Services, and Routes and reconcile cluster cloud state",
              "trigger": "aws-cloud-controller-manager process starts",
              "implementation": "options.NewCloudControllerManagerOptions(), app.DefaultControllerInitializers(...), and app.Run(...)"
            }
          ]
        },
        "aws": {
          "conditions": [
            "Always"
          ],
          "operations": [
            {
              "operation": "Manage EC2 instances, autoscaling, routes, and load balancers",
              "trigger": "Cloud controllers reconcile cloud-backed Kubernetes resources",
              "implementation": "cloudprovider.InitCloudProvider(...) with aws or aws/v2 providers"
            }
          ]
        }
      },
      "services": []
    }
  }
}
