mix glean.specs (Gleanex v0.1.0)

Copy Markdown View Source

Vendor Glean's OpenAPI descriptions so the generated code can be reproduced.

mix glean.specs
mix glean.specs --ref 9b36aa40d235af4dfc387e9f4c62ed95a8dae326

Files are taken from source_specs/ in gleanwork/open-api. That directory is the right one: final_specs/ carries the same APIs with code samples merged in, which inflates the Client API description from under 400 KB to about 19 MB without adding anything a generator can use.

A floating ref such as main is resolved to a commit SHA first, and every file is then fetched at that SHA, so a run can never mix files from two different commits. The SHA and each description's own version are written to priv/openapi/.api-version.

Options

  • --ref - branch, tag or commit to download. Defaults to main.
  • --force - overwrite local edits without asking.

Authentication

Resolving the ref goes through GitHub's API, which allows 60 calls an hour per IP address without a token. Hosted CI runners share addresses, so that allowance is usually already spent and GitHub answers 403. Set GITHUB_TOKEN (or GH_TOKEN) and the call is authenticated instead, which raises the limit to 1,000 an hour. Any token with read access works; the repository is public.