Skip to content

airbytehq/terraform-provider-airbyte

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

223 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Programatically control Airbyte Cloud through an API.

Authentication

Developers will need to create an API Key within your Developer Portal to make API requests. You can use your existing Airbyte account to log in to the Developer Portal. Once you are in the Developer Portal, use the API Keys tab to create or remove API Keys. You can see a walkthrough demo here🎦

The Developer Portal UI can also be used to help build your integration by showing information about network requests in the Requests tab. API usage information is also available to you in the Usage tab.

Summary

airbyte-api: Programmatically control Airbyte Cloud, OSS & Enterprise.

Table of Contents

Installation

To install this provider, copy and paste this code into your Terraform configuration. Then, run terraform init.

terraform {
  required_providers {
    airbyte = {
      source  = "airbytehq/airbyte"
      version = "1.0.0"
    }
  }
}

provider "airbyte" {
  server_url = "..." # Optional
}

Testing the provider locally

Local Provider

Should you want to validate a change locally, the --debug flag allows you to execute the provider against a terraform instance locally.

This also allows for debuggers (e.g. delve) to be attached to the provider.

go run main.go --debug
# Copy the TF_REATTACH_PROVIDERS env var
# In a new terminal
cd examples/your-example
TF_REATTACH_PROVIDERS=... terraform init
TF_REATTACH_PROVIDERS=... terraform apply

Compiled Provider

Terraform allows you to use local provider builds by setting a dev_overrides block in a configuration file called .terraformrc. This block overrides all other configured installation methods.

  1. Execute go build to construct a binary called terraform-provider-airbyte
  2. Ensure that the .terraformrc file is configured with a dev_overrides section such that your local copy of terraform can see the provider binary

Terraform searches for the .terraformrc file in your home directory and applies any configuration settings you set.

provider_installation {

  dev_overrides {
      "registry.terraform.io/airbytehq/airbyte" = "<PATH>"
  }

  # For all other providers, install them directly from their origin provider
  # registries as normal. If you omit this, Terraform will _only_ use
  # the dev_overrides block, and so no other providers will be available.
  direct {}
}

Migrating to 1.0

Deprecation Notice: Typed connector-specific resources (e.g., airbyte_source_postgres) are deprecated in 1.0 and targeted for removal in 1.1.

If you are using typed resources, see the Migrating to 1.0 guide to move to the generic airbyte_source / airbyte_destination resources with the airbyte_connector_configuration data source for type-validated configuration.

Authentication

This provider supports authentication configuration via provider configuration.

Available configuration:

Provider Attribute Description
bearer_auth HTTP Bearer.
client_id OAuth2 Client Credentials Flow client identifier.
client_secret OAuth2 Client Credentials Flow client secret.
password HTTP Basic password.
token_url OAuth2 Client Credentials Flow token URL.
username HTTP Basic username.

Available Resources and Data Sources

Managed Resources

Data Sources

Terraform allows you to use local provider builds by setting a dev_overrides block in a configuration file called .terraformrc. This block overrides all other configured installation methods.

Terraform searches for the .terraformrc file in your home directory and applies any configuration settings you set.

provider_installation {

  dev_overrides {
      "registry.terraform.io/airbyte/scaffolding" = "<PATH>"
  }

  # For all other providers, install them directly from their origin provider
  # registries as normal. If you omit this, Terraform will _only_ use
  # the dev_overrides block, and so no other providers will be available.
  direct {}
}

Your <PATH> may vary depending on how your Go environment variables are configured. Execute go env GOBIN to set it, then set the <PATH> to the value returned. If nothing is returned, set it to the default location, $HOME/go/bin.

Contributions

While we value open-source contributions to this SDK, this library is generated programmatically. Feel free to open a PR or a Github issue as a proof of concept and we'll do our best to include it in a future release!

Provider Created by Speakeasy

Packages

No packages published

Contributors 17

Languages