← Back to context

Comment by cirego

2 days ago

I've always appreciated that Tilt chose Starlark instead of YAML. Makes things so much cleaner!

Well, now you've really got me interested. Almost every case of a YAML eDSL would be better served by Starlark instead, in my Bazel-brained opinion.

  • I think Tilt Extensions highlights the combined power and composability that using Starlarks brings to Tilt: https://docs.tilt.dev/extensions.html.

    Want to create a Kubernetes secret? It's as simple as:

        load('ext://secret', 'secret_yaml_generic')
        k8s_yaml(secret_yaml_generic(...))
    

    Want to create that secret from Vault instead?

        load('ext://vault_client', 'vault_read_secret', 'vault_set_env_vars')
        vault_set_env_vars('https://localhost:8200','mytoken')
        my_foo = vault_read_secret('path/myfoo', 'value')
        my_bar = vault_read_secret('path/mybar', 'foobar')