-
Notifications
You must be signed in to change notification settings - Fork 10
Description
In our smoke tests we require having access to a certain set of runtime values that differ depending on the extension being tested, such as:
nameandsql_nameof the extensiontagof the extension image- the
versionof the extension - the
base imageof the extension image, (e.g the "minimal" image where the extension should be installed) - GUCs that should be set in PG for the target extensions, such as
shared_preload_libraries - custom
extension_control_path,dynamic_library_path,ld_library_path - and more..
Some of these are retrievable from the extension's metadata.hcl, others are only known after building the extension's image.
With chainsaw, you can pass arbitrary values when running tests using the --values flag, in the form of a values.yaml YAML file.
Values will be available under the $values binding.
Currently these values are being generated in the CI, but we should also provide a way to easily generate them locally.
This could be done via a new dagger module that properly parses a target extension's metadata to create a values.yaml ready to be used with chainsaw.
By default we should let the tool use the current latest extension's image (e.g the one defined in the metadata), but it should also be possible to point it to a custom extension's image in order to generate the values for that one.