Add gclient hook to download prebuilt mojo_shell
This adds a gclient hook that downloads prebuilt mojo_shell binaries from google storage (linux only for now) and gyp/gn flags to toggle using these prebuilt binaries instead of ones built from source. This also adds a helper script that uploads a locally built mojo_shell binary to the appropriate place in google storage. The versioning scheme is: *) mojo/public/VERSION contains an identifier (committish currently) for the mojo public SDK. The mojo_shell binary must match the interfaces defined in this version of mojo/public/. *) gs://mojo/shell/$VERSION/$PLATFORM.zip contains a prebuilt mojo_shell binary for a particular version. $PLATFORM for now must be linux-x64, but we can add more later as needed. gclient runhooks downloads the shell binary referred to by mojo/public/VERSION if it is available for the host platform to mojo/public/tools/prebuilt/ and updates mojo/public/tools/prebuilt/VERSION to tag the version downloaded if successful. On subsequent runs the hook will check this against mojo/public/VERSION and avoid downloading again if the binary is up to date. This also adds variables to the GYP and GN builds that control if building 'mojo' builds a mojo_shell binary from source or copies the prebuilt binary into the outdir. They both default to false for now. R=abarth@chromium.org Review URL: https://codereview.chromium.org/667853002 Cr-Commit-Position: refs/heads/master@{#300600}
Showing
mojo/public/VERSION
0 → 100644
mojo/public/mojo.gni
0 → 100644
mojo/public/tools/BUILD.gn
0 → 100644
Please register or sign in to comment