code: func (c *Cluster) GetNode(input string) (types.Node, error) {
  	var node *swarmapi.Node
  
  	if err := c.lockedManagerAction(func(ctx context.Context, state nodeState) error {
  		n, err := getNode(ctx, state.controlClient, input)
  		if err != nil {
  			return err
  		}
  		node = n
  		return nil
  	}); err != nil {
  		return types.Node{}, err
  	}
  
  	return convert.NodeFromGRPC(*node), nil
  }
docs: // GetNode returns a node based on an ID.