Categorygithub.com/packetloop/terraform-provider-kafka

# README

Build status GitHub release All Contributors Github All Releases

terraform-provider-kafka

A Terraform provider to manage Kafka topics lifecycle and compatible with latest Terraform version.

We couldn't use Confluent's Kafka REST service due to the way we create a Kafka topic. Hence, we build our own REST service https://github.com/packetloop/kafka-admin-service with Go bindings https://github.com/packetloop/go-kafkaesque.

[NOTE]

There's a old version of this provider in develop branch which is not compatible with latest Terraform.

Usage:

Download this provider, pick a version you'd like from releases from Binary Releases

curl -L \
  https://github.com/packetloop/terraform-provider-kafka/releases/download/v0.1.0/terraform-provider-kafka_v0.1.0_Darwin_x86_64 \
  -o ~/.terraform.d/plugins/terraform-provider-kafka_v0.1.0 && \
  chmod +x ~/.terraform.d/plugins/terraform-provider-kafka_v0.1.0
provider "kafka" {
  host_url     = "http://localhost:8080"
  version = "~> 0.1.0"
}

resource "kafka_topic" "my-topic" {
  name = "my-topic"
  partitions = 2
  replication_factor = 1
  retention_ms = 300000
  cleanup_policy = "compact"
  segment_ms = 1440000
  segment_bytes = 1073741824
}

Development and testing:

  1. Clone kafka-admin-service ( REST SERVICE )
  git clone [email protected]:packetloop/kafka-admin-service.git && \
    cd kafka-admin-service && ./run.sh

    TF_ACC=1 make test
  1. From this project:
  TF_ACC=0  go test -race -cover -v ./...

More examples can be found in examples/main.tf.

TODO:

Import Resources:

Syntax

  terraform import kafka_request.lenfree-run <resource ID>
  terraform import kafka_docker_deploy.test-deploy-2 <resource ID>

Data resource:

# Packages

No description provided by the author