Check bazel version with the workspace
diff --git a/WORKSPACE b/WORKSPACE
index fd4aa93..e1b7b23 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -1,6 +1,8 @@
workspace(name = "build_bazel_e4b")
load("//tools/build_defs:eclipse.bzl", "load_eclipse_deps")
+load(":bazel_version.bzl", "check_bazel_version")
+check_bazel_version("0.4.5")
load_eclipse_deps()
diff --git a/bazel_version.bzl b/bazel_version.bzl
new file mode 100644
index 0000000..9d78389
--- /dev/null
+++ b/bazel_version.bzl
@@ -0,0 +1,31 @@
+# Copied from https://github.com/tensorflow/tensorflow/blob/dfa7d2d2953c3d33d2e8deb898240be008de5be6/tensorflow/workspace.bzl
+
+# Parse the bazel version string from `native.bazel_version`.
+def _parse_bazel_version(bazel_version):
+ # Remove commit from version.
+ version = bazel_version.split(" ", 1)[0]
+
+ # Split into (release, date) parts and only return the release
+ # as a tuple of integers.
+ parts = version.split('-', 1)
+
+ # Turn "release" into a tuple of strings
+ version_tuple = ()
+ for number in parts[0].split('.'):
+ version_tuple += (str(number),)
+ return version_tuple
+
+# Check that a specific bazel version is being used.
+def check_bazel_version(bazel_version):
+ if "bazel_version" not in dir(native):
+ fail("\nCurrent Bazel version is lower than 0.2.1, expected at least %s\n" % bazel_version)
+ elif not native.bazel_version:
+ print("\nCurrent Bazel is not a release version, cannot check for compatibility.")
+ print("Make sure that you are running at least Bazel %s.\n" % bazel_version)
+ else:
+ current_bazel_version = _parse_bazel_version(native.bazel_version)
+ minimum_bazel_version = _parse_bazel_version(bazel_version)
+ if minimum_bazel_version > current_bazel_version:
+ fail("\nCurrent Bazel version is {}, expected at least {}\n".format(
+ native.bazel_version, bazel_version))
+ pass