本文整理汇总了Golang中github.com/aws/aws-sdk-go/service/ecs.ECS.DescribeServices方法的典型用法代码示例。如果您正苦于以下问题:Golang ECS.DescribeServices方法的具体用法?Golang ECS.DescribeServices怎么用?Golang ECS.DescribeServices使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/aws/aws-sdk-go/service/ecs.ECS
的用法示例。
在下文中一共展示了ECS.DescribeServices方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: findTaskArn
// findTaskArn
// finds the first task definition in a cluster and service.
//
// Returns task ARN
//
// TODO:
// filter the resulting tasks by essential: true
// and only return the essential?
// either that or assume that the new image will
// somewhat match the old image, and use that to pick
// one of the tasks.
func findTaskArn(svc *ecs.ECS, clusterArn string, serviceArn string) (string, error) {
params := &ecs.DescribeServicesInput{
Services: []*string{
aws.String(serviceArn),
},
Cluster: aws.String(clusterArn),
}
resp, err := svc.DescribeServices(params)
return *resp.Services[0].TaskDefinition, err
}
示例2: VerifyServiceExists
// Verify that the ECS service exists.
func VerifyServiceExists(ecs_obj *ecs.ECS, cluster string, service string) error {
params := &ecs.DescribeServicesInput{
Cluster: &cluster,
Services: []*string{ // Required
aws.String(service), // Required
},
}
_, err := ecs_obj.DescribeServices(params)
if err != nil {
return fmt.Errorf("Cannot verify if ECS service exists: %s", FormatAwsError(err))
}
return nil
}
示例3: GetServices
// GetServices will return a slice of ECS Services for a given cluster
func GetServices(svc *ecs.ECS, cluster *string) ([]*ecs.Service, error) {
var serviceArns []*string
// List clusters
reqParams := &ecs.ListServicesInput{
Cluster: cluster,
MaxResults: aws.Int64(10),
NextToken: aws.String(""),
}
// Loop through tokens until no more results remain
for {
resp, err := svc.ListServices(reqParams)
// Error check
if err != nil {
return nil, fmt.Errorf("ecs.ListServices: %s", err.Error())
}
// Expand slice of services and append to our comprehensive list
serviceArns = append(serviceArns, resp.ServiceArns...)
// Cycle token
if resp.NextToken != nil {
reqParams.NextToken = resp.NextToken
} else {
// Kill loop ... out of response pages
break
}
}
// Describe the services that we just got back
resp, err := svc.DescribeServices(&ecs.DescribeServicesInput{
Cluster: cluster,
Services: serviceArns,
})
if err != nil {
return nil, fmt.Errorf("ecs.DescribeServices: %s", err.Error())
}
return resp.Services, nil
}