Documentation
Reference
Transformer Spec Reference

Transformer Spec Reference

This goes through all the available options for the transformer plugin spec object.

Example

This example configures the basic plugin to rename all tables by adding a cq_ prefix before reaching the destination.

kind: transformer
spec:
  name: "basic"
  path: "cloudquery/basic"
  registry: "cloudquery"
  version: "VERSION_TRANSFORMER_BASIC"

  spec:
    transformations:
      - kind: change_table_names
        tables: ["*"]
        new_table_name_template: "cq_{{.OldName}}"

Spec

name

(string, required)

Name of the plugin. If you have multiple transformer plugins, this must be unique.

The name field may be used to uniquely identify a particular transformer configuration. For example, if you have two configs for the basic plugin for transforming a source table differently in each of two different destination databases, one may be named basic-1 and the other basic-2. In this case, the path option below must be used to specify the download path for the plugin.

registry

(string, optional, default: cloudquery, available: github, cloudquery, local, grpc, docker)

  • cloudquery: CloudQuery will look for and download the plugin from the official CloudQuery registry, and then execute it.
  • local: CloudQuery will execute the plugin from a local path.
  • grpc: mostly useful in debug mode when plugin is already running in a different terminal, CloudQuery will connect to the gRPC plugin server directly without spawning the process.

path

(string, required)

Configures how to retrieve the plugin. The contents depend on the value of registry (github by default).

  • For plugins hosted on GitHub, path should be of the form "<org>/<repository>". For official plugins, should be cloudquery/<plugin-name>.
  • For plugins that are located in the local filesystem, path should a filesystem path to the plugin binary.
  • To connect to a running plugin via grpc (mostly useful for debugging), path should be the host-port of the plugin (e.g. localhost:7777).

version

(string, required)

version must be a valid SemVer (opens in a new tab), e.g. vMajor.Minor.Patch. You can find all official plugin versions under our GitHub releases page (opens in a new tab), and for community plugins you can find it in the relevant community repository.

spec

(object, optional)

Plugin specific configurations. Visit transformer plugins (opens in a new tab) documentation for more information.