The yaml module contains the main configuration language for Spyglass.
The primary interface Yaml is the object that is serialized and deserialized
to yaml files, forming the basis of this library's config-as-code implementation.
As seen above, you can use database.schema.<FUTURE> to create a "future grants" statement,
such as acme.prod.<FUTURE> to grant access to all future views.
Additionally, you can use database.schema.* to create an "all grants" statement, such as
acme.prod.* to grant access to all current views.
The
yaml
module contains the main configuration language for Spyglass.The primary interface
Yaml
is the object that is serialized and deserialized to yaml files, forming the basis of this library's config-as-code implementation.Basic Example
A simple example of a yaml file looks like:
Special Operators
As seen above, you can use
database.schema.<FUTURE>
to create a "future grants" statement, such asacme.prod.<FUTURE>
to grant access to all future views.Additionally, you can use
database.schema.*
to create an "all grants" statement, such asacme.prod.*
to grant access to all current views.Goals
One main design goal of this yaml is to be isomorphic; that is, a reversible mapping between Spyglass configuration and databases like Snowflake.
So, you can
import
Snowflake access rules to Spyglass, as well asapply
Spyglass configuration back into Snowflake access rules, at any time.