Skip to main content

Assert Validator


spectacles assert
--project PROJECT
[--branch BRANCH]
[--remote-reset | --commit-ref COMMIT_REF]
[--explores EXPLORES [EXPLORES ...]]


All required options in Global Flags are also required for the Assert Validator.


Usage: --branch dev-branch-abc123

The Git branch of your Looker project to validate.

If neither branch nor commit-ref are passed, Spectacles will test production.

Environment Variable: LOOKER_GIT_BRANCH


Usage: --commit-ref ae4d8c

The commit of your project that Spectacles should checkout to validate. Spectacles will create a temporary branch for the tests based on this commit and delete the branch at the end of the validation or if an exception is handled.

If neither branch nor commit-ref are passed, Spectacles will test production.

Environment Variable: SPECTACLES_COMMIT_REF


Usage: --explores model_a/* -model_a/explore_b

Select specific models or explores for validation. This flag accepts a list of / delimited model and explore names. The wildcard operator * is also accepted to choose all models or Explores, for example model_a/* will select all Explores in Model A.

To exclude a model or explore, add a leading hyphen. For example, -orders/order_items will exclude the order_items Explore from validation.

Here are some additional examples:

Only Explore A

--explores model_a/explore_a

All Explores except for Explore B

--explores -model_a/explore_b

All Explores in Model A except for Explore B

--explores "model_a/*" -model_a/explore_b

Every Explore named Explore A across all models

--explores "*/explore_a"

Explore A and Explore B

--explores model_a/explore_a model_a/explore_b

On some shells, like zsh, the * character gets treated as a file globbing wildcard, with causes unexpected results for Spectacles. You might see an output like:

zsh: no matches found

If that happens, you need to wrap your model_name/explore_name strings in quotes, like --explores "model_a/explore_a".


Usage: --pin-imports core_looker_project:ae4d8c

Pins locally imported Looker projects to a specific git ref. By default, Spectacles will set any locally imported Looker projects, defined in your manifest.lkml, to their current production commit. If you want to test a project with a specific commit or branch from the upstream imported project, you can use this flag to do so.

The flag accepts a list of : delimited project names and git refs. In order to set the imported project "core_models" to the branch "new_release", you would add the following: --pin-imports core_models:new_release.


Required. Usage: --project ecommerce

The LookML project you want to validate. Projects are listed at the bottom of the Develop menu in Looker.

Environment Variable: LOOKER_PROJECT


Usage: --remote-reset

Reset the branch to the version of the branch that is on the remote repository. This flag cannot be used with --commit-ref because it implicitly specifies a commit to use.


Providing this flag will delete any uncommited changes in the user’s workspace.