// Parameters returns the list of CloudFormation parameters used by the template.
Parameters returns the list of CloudFormation parameters used by the template.
// Parameters returns the list of CloudFormation parameters used by the template .
func (w *wkld) Parameters() ([]*cloudformation.Parameter, error) {
	desiredCount := w.tc.Count.Value
	if !w.tc.Count.Autoscaling.IsEmpty() {
		min, _, err := w.tc.Count.Autoscaling.Range.Parse()
		if err != nil {
			return nil, fmt.Errorf("parse task count value %s: %w", string(w.tc.Count.Autoscaling.Range), err)
		}
		desiredCount = aws.Int(min)
	}
	return []*cloudformation.Parameter{
		{
			ParameterKey:   aws.String(WorkloadAppNameParamKey),
			ParameterValue: aws.String(w.app),
		},
		{
			ParameterKey:   aws.String(WorkloadEnvNameParamKey),
			ParameterValue: aws.String(w.env),
		},
		{
			ParameterKey:   aws.String(WorkloadNameParamKey),
			ParameterValue: aws.String(w.name),
		},
		{
			ParameterKey:   aws.String(WorkloadContainerImageParamKey),
			ParameterValue: aws.String(fmt.Sprintf("%s:%s", w.rc.ImageRepoURL, w.rc.ImageTag)),
		},
		{
			ParameterKey:   aws.String(WorkloadTaskCPUParamKey),
			ParameterValue: aws.String(strconv.Itoa(aws.IntValue(w.tc.CPU))),
		},
		{
			ParameterKey:   aws.String(WorkloadTaskMemoryParamKey),
			ParameterValue: aws.String(strconv.Itoa(aws.IntValue(w.tc.Memory))),
		},
		{
			ParameterKey:   aws.String(WorkloadTaskCountParamKey),
			ParameterValue: aws.String(strconv.Itoa(*desiredCount)),
		},
		{
			ParameterKey:   aws.String(WorkloadLogRetentionParamKey),
			ParameterValue: aws.String("30"),
		},
		{
			ParameterKey:   aws.String(WorkloadAddonsTemplateURLParamKey),
			ParameterValue: aws.String(w.rc.AddonsTemplateURL),
		},
	}, nil
}
func ( w * wkld ) Parameters ( ) ( [ ] * cloudformation . Parameter , error ) { desiredCount := w . tc . Count . Value if ! w . tc . Count . Autoscaling . IsEmpty ( ) { min , _ , err := w . tc . Count . Autoscaling . Range . Parse ( ) if err != nil { return nil , fmt . Errorf ( " " , string ( w . tc . Count . Autoscaling . Range ) , err ) } desiredCount = aws . Int ( min ) } return [ ] * cloudformation . Parameter { { ParameterKey : aws . String ( WorkloadAppNameParamKey ) , ParameterValue : aws . String ( w . app ) , } , { ParameterKey : aws . String ( WorkloadEnvNameParamKey ) , ParameterValue : aws . String ( w . env ) , } , { ParameterKey : aws . String ( WorkloadNameParamKey ) , ParameterValue : aws . String ( w . name ) , } , { ParameterKey : aws . String ( WorkloadContainerImageParamKey ) , ParameterValue : aws . String ( fmt . Sprintf ( " " , w . rc . ImageRepoURL , w . rc . ImageTag ) ) , } , { ParameterKey : aws . String ( WorkloadTaskCPUParamKey ) , ParameterValue : aws . String ( strconv . Itoa ( aws . IntValue ( w . tc . CPU ) ) ) , } , { ParameterKey : aws . String ( WorkloadTaskMemoryParamKey ) , ParameterValue : aws . String ( strconv . Itoa ( aws . IntValue ( w . tc . Memory ) ) ) , } , { ParameterKey : aws . String ( WorkloadTaskCountParamKey ) , ParameterValue : aws . String ( strconv . Itoa ( * desiredCount ) ) , } , { ParameterKey : aws . String ( WorkloadLogRetentionParamKey ) , ParameterValue : aws . String ( " " ) , } , { ParameterKey : aws . String ( WorkloadAddonsTemplateURLParamKey ) , ParameterValue : aws . String ( w . rc . AddonsTemplateURL ) , } , } , nil }
Parameters returns the list of CloudFormation parameters used by the template.
Parameters returns the list of CloudFormation parameters used by the template .
// If auto scaling is configured, override the desired count value.