func NewClientMgr()

in pkg/provider/alibaba/base/clientMgr.go [79:162]


func NewClientMgr() (*ClientMgr, error) {
	if err := loadCloudCFG(); err != nil {
		return nil, fmt.Errorf("load cloud config %s error: %s", ctrlCfg.ControllerCFG.CloudConfig, err.Error())
	}

	meta := NewMetaData()
	CLUSTER_ID = meta.ClusterID()
	region, err := meta.Region()
	if err != nil {
		return nil, fmt.Errorf("can not determin region: %s", err.Error())
	}

	ecli, err := ecs.NewClientWithStsToken(
		region, "key", "secret", "",
	)
	if err != nil {
		return nil, fmt.Errorf("initialize alibaba ecs client: %s", err.Error())
	}
	ecli.AppendUserAgent(KubernetesCloudControllerManager, version.Version)
	ecli.AppendUserAgent(AgentClusterId, CLUSTER_ID)

	vpcli, err := vpc.NewClientWithStsToken(
		region, "key", "secret", "")
	if err != nil {
		return nil, fmt.Errorf("initialize alibaba vpc client: %s", err.Error())
	}
	vpcli.AppendUserAgent(KubernetesCloudControllerManager, version.Version)
	vpcli.AppendUserAgent(AgentClusterId, CLUSTER_ID)

	slbcli, err := slb.NewClientWithStsToken(
		region, "key", "secret", "")
	if err != nil {
		return nil, fmt.Errorf("initialize alibaba slb client: %s", err.Error())
	}
	slbcli.AppendUserAgent(KubernetesCloudControllerManager, version.Version)
	slbcli.AppendUserAgent(AgentClusterId, CLUSTER_ID)

	albcli, err := alb.NewClientWithStsToken(
		region, "key", "secret", "")
	if err != nil {
		return nil, fmt.Errorf("initialize alibaba alb client: %s", err.Error())
	}
	albcli.AppendUserAgent(KubernetesCloudControllerManager, version.Version)
	albcli.AppendUserAgent(AgentClusterId, CLUSTER_ID)

	slscli, err := sls.NewClientWithStsToken(
		region, "key", "secret", "")
	if err != nil {
		return nil, fmt.Errorf("initialize alibaba sls client: %s", err.Error())
	}
	slscli.AppendUserAgent(KubernetesCloudControllerManager, version.Version)
	slscli.AppendUserAgent(AgentClusterId, CLUSTER_ID)

	cascli, err := cas.NewClientWithStsToken(
		region, "key", "secret", "")
	if err != nil {
		return nil, fmt.Errorf("initialize alibaba cas client: %s", err.Error())
	}
	cascli.AppendUserAgent(KubernetesCloudControllerManager, version.Version)
	cascli.AppendUserAgent(AgentClusterId, CLUSTER_ID)

	pvtzcli, err := pvtz.NewClientWithStsToken(
		region, "key", "secret", "",
	)
	if err != nil {
		return nil, fmt.Errorf("initialize alibaba pvtz client: %s", err.Error())
	}
	pvtzcli.AppendUserAgent(KubernetesCloudControllerManager, version.Version)
	pvtzcli.AppendUserAgent(AgentClusterId, CLUSTER_ID)

	auth := &ClientMgr{
		Meta:   meta,
		ECS:    ecli,
		VPC:    vpcli,
		SLB:    slbcli,
		PVTZ:   pvtzcli,
		ALB:    albcli,
		SLS:    slscli,
		CAS:    cascli,
		Region: region,
		stop:   make(<-chan struct{}, 1),
	}
	return auth, nil
}