title: Binary shell rule dependency
body: <p>We're using Bazel at work for wrapping and organizing some build systems that we use for our projects. Since, each project has its own build system (like bitbake for example), we can't use Bazel for the actual building (e.g creating cc_binary and cc_library rules that contain all the source code). But we do use it for wrapping and for a uniformed API. </p>
  
  <p>I want to make a shell script (A) dependent of another shell script (B), and I want to do so, such that B will run before A. Since we have some configurations inside the BUILD files, I can't simply run from command line B then A. I need Bazel to do so, and inject the configuration to both scripts. Something like :</p>
  
  <p>In the BUILD file of one component:</p>
  
  <pre><code>sh_binary(
  name = "bazel_build_multivisor",
  srcs = ["bazel-build-multivisor.sh"],
  data = ["wrkspceinfo"],
  deps = ["//core-build/components/bazel-pull:bazel_pull_multivisor"])
  </code></pre>
  
  <p>In the BUILD file of a second component which is in charge of pulling from git:</p>
  
  <pre><code>sh_binary(
  name = "bazel_pull_multivisor",
  srcs = ["pull_repo_repository.sh"],
  data = ["wrkspceinfo", "pull_repo_repository.sh"],
  args = [ARGS, "NAME=multivisor_repo;MODULE_NAME=*;GIT_BRANCH=*;MANIFEST=*.xml;PULL_PARAMS=8,8,8"],)
  </code></pre>
  
  <p>Meaning, I want a sh_binary rule to depend on a different sh_binary rule.</p>
  
  <p>Is this possible? Is there a better way doing so?</p>
  
  <p>Thanks.</p>