It turns out that if the script gets super huge, then Bazel will fail in
a mysterious way if you pass the script as a string to ctx.action.
This way of doing things is better anyway, because this makes it much
easier for the user to see the script that was actually generated for
troubleshooting purposes.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=129114272