Skip to content

Latest commit

 

History

History
298 lines (210 loc) · 13.2 KB

File metadata and controls

298 lines (210 loc) · 13.2 KB
page_title subcategory description
airbyte_destination_postgres Resource - terraform-provider-airbyte
DestinationPostgres Resource

airbyte_destination_postgres (Resource)

DestinationPostgres Resource

Example Usage

resource "airbyte_destination_postgres" "my_destination_postgres" {
  configuration = {
    additional_properties = "{ \"see\": \"documentation\" }"
    cdc_deletion_mode     = "Soft delete"
    database              = "...my_database..."
    disable_type_dedupe   = true
    drop_cascade          = false
    host                  = "...my_host..."
    jdbc_url_params       = "...my_jdbc_url_params..."
    password              = "...my_password..."
    port                  = 5432
    raw_data_schema       = "...my_raw_data_schema..."
    schema                = "public"
    ssl                   = true
    ssl_mode = {
      verify_ca = {
        additional_properties = "{ \"see\": \"documentation\" }"
        ca_certificate        = "...my_ca_certificate..."
        client_key_password   = "...my_client_key_password..."
        mode                  = "verify-ca"
      }
    }
    tunnel_method = {
      password_authentication = {
        additional_properties = "{ \"see\": \"documentation\" }"
        tunnel_host           = "...my_tunnel_host..."
        tunnel_method         = "SSH_PASSWORD_AUTH"
        tunnel_port           = 28502
        tunnel_user           = "...my_tunnel_user..."
        tunnel_user_password  = "...my_tunnel_user_password..."
      }
    }
    unconstrained_number = false
    username             = "...my_username..."
  }
  definition_id = "6cc561e7-8b38-4621-919b-0687fe3682b7"
  name          = "...my_name..."
  workspace_id  = "2b2d880a-23fd-4463-8627-0a837b28bb7e"
}

Schema

Required

  • configuration (Attributes) The values required to configure the destination. The schema for this must match the schema return by destination_definition_specifications/get for the destinationDefinition. (see below for nested schema)
  • name (String) Name of the destination e.g. dev-mysql-instance.
  • workspace_id (String)

Optional

  • definition_id (String) The UUID of the connector definition. One of configuration.destinationType or definitionId must be provided. Default: "25c5221d-dce2-4163-ade9-739ef790f503"; Requires replacement if changed.

Read-Only

  • created_at (Number)
  • destination_id (String)
  • destination_type (String)
  • resource_allocation (Attributes) actor or actor definition specific resource requirements. if default is set, these are the requirements that should be set for ALL jobs run for this actor definition. it is overriden by the job type specific configurations. if not set, the platform will use defaults. these values will be overriden by configuration at the connection level. (see below for nested schema)

Nested Schema for configuration

Required:

  • database (String) Name of the database.
  • host (String) Hostname of the database.
  • port (Number) Port of the database.
  • username (String) Username to access the database.

Optional:

  • additional_properties (String) Parsed as JSON.
  • cdc_deletion_mode (String) Whether to execute CDC deletions as hard deletes (i.e. propagate source deletions to the destination), or soft deletes (i.e. leave a tombstone record in the destination). Defaults to hard deletes. Default: "Hard delete"; must be one of ["Hard delete", "Soft delete"]
  • disable_type_dedupe (Boolean) Disable Writing Final Tables. WARNING! The data format in _airbyte_data is likely stable but there are no guarantees that other metadata columns will remain the same in future versions
  • drop_cascade (Boolean) Drop tables with CASCADE. WARNING! This will delete all data in all dependent objects (views, etc.). Use with caution. This option is intended for usecases which can easily rebuild the dependent objects.
  • jdbc_url_params (String) Additional properties to pass to the JDBC URL string when connecting to the database formatted as 'key=value' pairs separated by the symbol '&'. (example: key1=value1&key2=value2&key3=value3).
  • password (String, Sensitive) Password associated with the username.
  • raw_data_schema (String) Airbyte will use this schema for various internal tables. In legacy raw tables mode, the raw tables will be stored in this schema. Defaults to "airbyte_internal".
  • schema (String) The default schema tables are written. If not specified otherwise, the "public" schema will be used. Default: "public"
  • ssl (Boolean) Encrypt data using SSL. When activating SSL, please select one of the connection modes.
  • ssl_mode (Attributes) SSL connection modes. disable - Disables encryption of communication between Airbyte and destination database. allow - Enables encryption only when required by the destination database. prefer - Allows unencrypted connections only if the destination database does not support encryption. require - Always require encryption. If the destination database server does not support encryption, connection will fail. verify-ca - Always require encryption and verifies that the destination database server has a valid SSL certificate. verify-full - This is the most secure mode. Always require encryption and verifies the identity of the destination database server. See more information - in the docs. (see below for nested schema)
  • tunnel_method (Attributes) Whether to initiate an SSH tunnel before connecting to the database, and if so, which kind of authentication to use. (see below for nested schema)
  • unconstrained_number (Boolean) Create numeric columns as unconstrained DECIMAL instead of NUMBER(38, 9). This will allow increased precision in numeric values. (this is disabled by default for backwards compatibility, but is recommended to enable)

Nested Schema for configuration.ssl_mode

Optional:

Nested Schema for configuration.ssl_mode.allow

Optional:

  • additional_properties (String) Parsed as JSON.
  • mode (String) Default: "allow"; must be "allow"

Nested Schema for configuration.ssl_mode.disable

Optional:

  • additional_properties (String) Parsed as JSON.
  • mode (String) Default: "disable"; must be "disable"

Nested Schema for configuration.ssl_mode.prefer

Optional:

  • additional_properties (String) Parsed as JSON.
  • mode (String) Default: "prefer"; must be "prefer"

Nested Schema for configuration.ssl_mode.require

Optional:

  • additional_properties (String) Parsed as JSON.
  • mode (String) Default: "require"; must be "require"

Nested Schema for configuration.ssl_mode.verify_ca

Required:

  • ca_certificate (String, Sensitive) CA certificate

Optional:

  • additional_properties (String) Parsed as JSON.
  • client_key_password (String, Sensitive) Password for keystorage. This field is optional. If you do not add it - the password will be generated automatically.
  • mode (String) Default: "verify-ca"; must be "verify-ca"

Nested Schema for configuration.ssl_mode.verify_full

Required:

  • ca_certificate (String, Sensitive) CA certificate
  • client_certificate (String, Sensitive) Client certificate
  • client_key (String, Sensitive) Client key

Optional:

  • additional_properties (String) Parsed as JSON.
  • client_key_password (String, Sensitive) Password for keystorage. This field is optional. If you do not add it - the password will be generated automatically.
  • mode (String) Default: "verify-full"; must be "verify-full"

Nested Schema for configuration.tunnel_method

Optional:

  • no_tunnel (Attributes) No ssh tunnel needed to connect to database (see below for nested schema)
  • password_authentication (Attributes) Connect through a jump server tunnel host using username and password authentication (see below for nested schema)
  • ssh_key_authentication (Attributes) Connect through a jump server tunnel host using username and ssh key (see below for nested schema)

Nested Schema for configuration.tunnel_method.no_tunnel

Optional:

  • additional_properties (String) Parsed as JSON.
  • tunnel_method (String) Default: "NO_TUNNEL"; must be "NO_TUNNEL"

Nested Schema for configuration.tunnel_method.password_authentication

Required:

  • tunnel_host (String) Hostname of the jump server host that allows inbound ssh tunnel.
  • tunnel_user (String) OS-level username for logging into the jump server host
  • tunnel_user_password (String, Sensitive) OS-level password for logging into the jump server host

Optional:

  • additional_properties (String) Parsed as JSON.
  • tunnel_method (String) Default: "SSH_PASSWORD_AUTH"; must be "SSH_PASSWORD_AUTH"
  • tunnel_port (Number) Port on the proxy/jump server that accepts inbound ssh connections. Default: 22

Nested Schema for configuration.tunnel_method.ssh_key_authentication

Required:

  • ssh_key (String, Sensitive) OS-level user account ssh key credentials in RSA PEM format ( created with ssh-keygen -t rsa -m PEM -f myuser_rsa )
  • tunnel_host (String) Hostname of the jump server host that allows inbound ssh tunnel.
  • tunnel_user (String) OS-level username for logging into the jump server host

Optional:

  • additional_properties (String) Parsed as JSON.
  • tunnel_method (String) Default: "SSH_KEY_AUTH"; must be "SSH_KEY_AUTH"
  • tunnel_port (Number) Port on the proxy/jump server that accepts inbound ssh connections. Default: 22

Nested Schema for resource_allocation

Read-Only:

Nested Schema for resource_allocation.default

Read-Only:

  • cpu_limit (String)
  • cpu_request (String)
  • ephemeral_storage_limit (String)
  • ephemeral_storage_request (String)
  • memory_limit (String)
  • memory_request (String)

Nested Schema for resource_allocation.job_specific

Read-Only:

  • job_type (String) enum that describes the different types of jobs that the platform runs.
  • resource_requirements (Attributes) optional resource requirements to run workers (blank for unbounded allocations) (see below for nested schema)

Nested Schema for resource_allocation.job_specific.resource_requirements

Read-Only:

  • cpu_limit (String)
  • cpu_request (String)
  • ephemeral_storage_limit (String)
  • ephemeral_storage_request (String)
  • memory_limit (String)
  • memory_request (String)

Import

Import is supported using the following syntax:

In Terraform v1.5.0 and later, the import block can be used with the id attribute, for example:

import {
  to = airbyte_destination_postgres.my_airbyte_destination_postgres
  id = "..."
}

The terraform import command can be used, for example:

terraform import airbyte_destination_postgres.my_airbyte_destination_postgres "..."