code: func RunCreate(cli command.Cli, o *CreateOptions) error {
  	s := cli.ContextStore()
  	if err := checkContextNameForCreation(s, o.Name); err != nil {
  		return err
  	}
  	stackOrchestrator, err := command.NormalizeOrchestrator(o.DefaultStackOrchestrator)
  	if err != nil {
  		return errors.Wrap(err, "unable to parse default-stack-orchestrator")
  	}
  	if o.From == "" && o.Docker == nil && o.Kubernetes == nil {
  		return createFromExistingContext(s, cli.CurrentContext(), stackOrchestrator, o)
  	}
  	if o.From != "" {
  		return createFromExistingContext(s, o.From, stackOrchestrator, o)
  	}
  	return createNewContext(o, stackOrchestrator, cli, s)
  }
docs: // RunCreate creates a Docker context