Make rule.getLabels deterministic.

HashMultimap provides no guarantee on the iteration order.

--
MOS_MIGRATED_REVID=90153110
diff --git a/src/main/java/com/google/devtools/build/lib/packages/Rule.java b/src/main/java/com/google/devtools/build/lib/packages/Rule.java
index 0b6c0ea..c303541 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/Rule.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/Rule.java
@@ -22,6 +22,7 @@
 import com.google.common.collect.ImmutableListMultimap;
 import com.google.common.collect.ImmutableMultimap;
 import com.google.common.collect.ImmutableSet;
+import com.google.common.collect.ImmutableSortedSet;
 import com.google.common.collect.LinkedListMultimap;
 import com.google.common.collect.ListMultimap;
 import com.google.common.collect.Lists;
@@ -438,7 +439,7 @@
    *     result iff (the predicate returned {@code true} and the labels are not outputs)
    */
   public Collection<Label> getLabels(final BinaryPredicate<Rule, Attribute> predicate) {
-    return getTransitions(predicate).values();
+    return ImmutableSortedSet.copyOf(getTransitions(predicate).values());
   }
 
   /**