// shuffleNodes copies nodes from the specified slice into a copy in random // order. It returns a new slice. func shuffleNodes(nodes []api.Node) []api.Node { shuffled := make([]api.Node, len(nodes)) perm := rand.Perm(len(nodes)) for i, j := range perm { shuffled[j] = nodes[i] } return shuffled }
// ShuffleStrings copies strings from the specified slice into a copy in random // order. It returns a new slice. func ShuffleStrings(s []string) []string { shuffled := make([]string, len(s)) perm := utilrand.Perm(len(s)) for i, j := range perm { shuffled[j] = s[i] } return shuffled }