code: func connectNodesInRing(net *Network, nodeCount int) ([]enode.ID, error) {
  	ids := make([]enode.ID, nodeCount)
  	for i := 0; i < nodeCount; i++ {
  		conf := adapters.RandomNodeConfig()
  		node, err := net.NewNodeWithConfig(conf)
  		if err != nil {
  			log.Error("Error creating a node!", "err", err)
  			return nil, err
  		}
  		ids[i] = node.ID()
  	}
  
  	for _, id := range ids {
  		if err := net.Start(id); err != nil {
  			log.Error("Error starting a node!", "err", err)
  			return nil, err
  		}
  		log.Debug(fmt.Sprintf("node %v starting up", id))
  	}
  	for i, id := range ids {
  		peerID := ids[(i+1)%len(ids)]
  		if err := net.Connect(id, peerID); err != nil {
  			log.Error("Error connecting a node to a peer!", "err", err)
  			return nil, err
  		}
  	}
  
  	return ids, nil
  }
docs: //connect nodeCount number of nodes in a ring