Hmm this doesn't seem to be working as documented; it doesn't like that line in WORKSPACE. I tried creating a minimal repo containing only a WORKSPACE file with that line and running bazel info on it. In 0.1.5 I get this error:
# bazel info
....
java.lang.IllegalStateException: topLevelKey: TRANSITIVE_TARGET:@bazel_tools//tools/cpp:toolchain
alreadyReported: false
path to cycle:
TRANSITIVE_TARGET:@bazel_tools//tools/cpp:toolchain
TARGET_MARKER:@bazel_tools//tools/cpp:toolchain
PACKAGE:@bazel_tools//tools/cpp
PACKAGE_LOOKUP:@bazel_tools//tools/cpp
cycle:
REPOSITORY:@bazel_tools
PACKAGE:external
WORKSPACE_FILE:[/xperiel/local/tmp]/[WORKSPACE]
SKYLARK_IMPORTS_LOOKUP:com.google.devtools.build.lib.skyframe.SkylarkImportLookupValue$SkylarkImportLookupKey@ac359b97
AST_FILE_LOOKUP:@bazel_tools//tools/build_defs/groovy:groovy.bzl
PACKAGE_LOOKUP:@bazel_tools//tools/build_defs/groovy
at com.google.common.base.Preconditions.checkState(Preconditions.java:174)
at com.google.devtools.build.lib.util.Preconditions.checkState(Preconditions.java:188)
at com.google.devtools.build.skyframe.CyclesReporter.reportCycles(CyclesReporter.java:82)
at com.google.devtools.build.lib.skyframe.SkyframeLabelVisitor.sync(SkyframeLabelVisitor.java:91)
at com.google.devtools.build.lib.runtime.CommandEnvironment.loadForConfigurations(CommandEnvironment.java:253)
at com.google.devtools.build.lib.runtime.CommandEnvironment.getConfigurations(CommandEnvironment.java:236)
at com.google.devtools.build.lib.runtime.commands.InfoCommand$1.get(InfoCommand.java:207)
at com.google.devtools.build.lib.runtime.commands.InfoCommand$1.get(InfoCommand.java:191)
at com.google.devtools.build.lib.runtime.commands.InfoCommand.exec(InfoCommand.java:257)
at com.google.devtools.build.lib.runtime.BlazeCommandDispatcher.exec(BlazeCommandDispatcher.java:371)
at com.google.devtools.build.lib.runtime.BlazeRuntime$3.exec(BlazeRuntime.java:1016)
at com.google.devtools.build.lib.server.RPCService.executeRequest(RPCService.java:65)
at com.google.devtools.build.lib.server.RPCServer.executeRequest(RPCServer.java:434)
at com.google.devtools.build.lib.server.RPCServer.serve(RPCServer.java:229)
at com.google.devtools.build.lib.runtime.BlazeRuntime.serverMain(BlazeRuntime.java:975)
at com.google.devtools.build.lib.runtime.BlazeRuntime.main(BlazeRuntime.java:772)
at com.google.devtools.build.lib.bazel.BazelMain.main(BazelMain.java:55)
Doesn't look Groovy specific, I tried with Rust and got the same thing.