code: func RunPush(dockerCli command.Cli, opts pushOptions) error {
  	ref, err := reference.ParseNormalizedNamed(opts.remote)
  	if err != nil {
  		return err
  	}
  
  	// Resolve the Repository name from fqn to RepositoryInfo
  	repoInfo, err := registry.ParseRepositoryInfo(ref)
  	if err != nil {
  		return err
  	}
  
  	ctx := context.Background()
  
  	// Resolve the Auth config relevant for this server
  	authConfig := command.ResolveAuthConfig(ctx, dockerCli, repoInfo.Index)
  	requestPrivilege := command.RegistryAuthenticationPrivilegedFunc(dockerCli, repoInfo.Index, "push")
  
  	if !opts.untrusted {
  		return TrustedPush(ctx, dockerCli, repoInfo, ref, authConfig, requestPrivilege)
  	}
  
  	responseBody, err := imagePushPrivileged(ctx, dockerCli, authConfig, ref, requestPrivilege)
  	if err != nil {
  		return err
  	}
  
  	defer responseBody.Close()
  	return jsonmessage.DisplayJSONMessagesToStream(responseBody, dockerCli.Out(), nil)
  }
docs: // RunPush performs a push against the engine based on the specified options