agent/api/task/task.go
func (task *Task) GetID() (string, error) {
	// Parse taskARN
	parsedARN, err := arn.Parse(task.Arn)
	if err != nil {
		return "", errors.Wrapf(err, "task get-id: malformed taskARN: %s", task.Arn)
	}

	// Get task resource section
	resource := parsedARN.Resource

	if !strings.Contains(resource, arnResourceDelimiter) {
		return "", errors.Errorf("task get-id: malformed task resource: %s", resource)
	}

	resourceSplit := strings.SplitN(resource, arnResourceDelimiter, arnResourceSections)
	if len(resourceSplit) != arnResourceSections {
		return "", errors.Errorf(
			"task get-id: invalid task resource split: %s, expected=%d, actual=%d",
			resource, arnResourceSections, len(resourceSplit))
	}

	return resourceSplit[1], nil
}
func (task *Task) GetID() (string, error) {
	// Parse taskARN
	parsedARN, err := arn.Parse(task.Arn)
	if err != nil {
		return "", errors.Wrapf(err, "task get-id: malformed taskARN: %s", task.Arn)
	}

	// Get task resource section
	resource := parsedARN.Resource

	if !strings.Contains(resource, arnResourceDelimiter) {
		return "", errors.Errorf("task get-id: malformed task resource: %s", resource)
	}

	resourceSplit := strings.SplitN(resource, arnResourceDelimiter, arnResourceSections)
	if len(resourceSplit) != arnResourceSections {
		return "", errors.Errorf(
			"task get-id: invalid task resource split: %s, expected=%d, actual=%d",
			resource, arnResourceSections, len(resourceSplit))
	}

	return resourceSplit[1], nil
}
func ( task * Task ) GetID ( ) ( string , error ) { // Parse taskARN parsedARN , err := arn . Parse ( task . Arn ) if err != nil { return " " , errors . Wrapf ( err , " " , task . Arn ) } // Get task resource section resource := parsedARN . Resource if ! strings . Contains ( resource , arnResourceDelimiter ) { return " " , errors . Errorf ( " " , resource ) } resourceSplit := strings . SplitN ( resource , arnResourceDelimiter , arnResourceSections ) if len ( resourceSplit ) != arnResourceSections { return " " , errors . Errorf ( " " , resource , arnResourceSections , len ( resourceSplit ) ) } return resourceSplit [ 1 ] , nil }
// GetID is used to retrieve the taskID from taskARN
// Reference: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-ecs
GetID is used to retrieve the taskID from taskARN Reference : http : // docs . aws . amazon . com / general / latest / gr / aws - arns - and - namespaces . html#arn - syntax - ecs