in internal/pkg/cli/svc_init.go [185:224]
func (o *initSvcOpts) Validate() error {
if o.appName == "" {
return errNoAppInWorkspace
}
if o.wkldType != "" {
if err := validateSvcType(o.wkldType); err != nil {
return err
}
}
if o.name != "" {
if err := validateSvcName(o.name, o.wkldType); err != nil {
return err
}
if err := o.validateDuplicateSvc(); err != nil {
return err
}
}
if o.dockerfilePath != "" && o.image != "" {
return fmt.Errorf("--%s and --%s cannot be specified together", dockerFileFlag, imageFlag)
}
if o.dockerfilePath != "" {
if _, err := o.fs.Stat(o.dockerfilePath); err != nil {
return err
}
}
if o.port != 0 {
if err := validateSvcPort(o.port); err != nil {
return err
}
}
if o.image != "" && o.wkldType == manifest.RequestDrivenWebServiceType {
if err := validateAppRunnerImage(o.image); err != nil {
return err
}
}
if err := validateSubscribe(o.noSubscribe, o.subscriptions); err != nil {
return err
}
return nil
}