in cmd/deployment/create.go [134:171]
func newCreatePayload(cmd *cobra.Command, version, region string) (*models.DeploymentCreateRequest, error) {
file, _ := cmd.Flags().GetString("file")
dt, _ := cmd.Flags().GetString("deployment-template")
var payload models.DeploymentCreateRequest
if file != "" {
if err := sdkcmdutil.DecodeDefinition(cmd, "file", &payload); err != nil {
merr := multierror.NewPrefixed("failed reading the file definition")
return nil, merr.Append(err,
errors.New("could not read the specified file, please make sure it exists"),
)
}
return &payload, nil
}
if dt == "" {
dt = setDefaultTemplate(region)
fmt.Fprintf(cmd.ErrOrStderr(), "--deployment-template not set, using %s", dt)
}
tpl, err := deptemplateapi.Get(deptemplateapi.GetParams{
API: ecctl.Get().API,
TemplateID: dt,
Region: region,
StackVersion: version,
})
if err != nil {
return nil, err
}
if es := tpl.DeploymentTemplate.Resources.Elasticsearch; len(es) > 0 {
if es[0].Plan.DeploymentTemplate == nil {
es[0].Plan.DeploymentTemplate = &models.DeploymentTemplateReference{}
}
es[0].Plan.DeploymentTemplate.ID = &dt
}
return removeApmForVersions8(version, tpl.DeploymentTemplate)
}