Change Management

If you have a change management tool like Gearset or Copado, you use it to deploy External Objects created by Omnata.

You cannot deploy Omnata Connections via change management tools, because they involve Named Credentials which cannot be extracted from environments.

Connections should be created manually in each new environment, but given the same name (even if they point to different databases/schemas in the data warehouse)

Aside from Named Credentials, each connection has a metadata object associated with it, which stores non-sensitive information about that environment. They differ in structure between data warehouse technology, but the metadata class is named like omnata_sf__<Product>_Connection__mdt, e.g. omnata_sf__Snowflake_Connection__mdt

External Objects each have a Table Name field with a value like Snowflake|Snowflake|MY_TABLE. That's of the form <Connection Type>|<Connection Name>|<table name>, so that the appropriate Omnata connection is used to access the data. Therefore if you just promote External Objects between environments, they will work as long as the connection name is the same.

Importantly, whenever you add an external object, there will be a slight change to the metadata record mentioned above. Specifically, the "ExternalId columns" field will have a new text row added, which is where the primary key column is stored. This field value change should be deployed alongside the external object definition.

Last updated