k2tf

Kubernetes YAML to Terraform HCL converter

MPL-2.0 License

Downloads
46
Stars
1.2K
Committers
14

k2tf - Kubernetes YAML to Terraform HCL converter

A tool for converting Kubernetes API Objects (in YAML format) into HashiCorp's Terraform configuration language.

The converted .tf files are suitable for use with the Terraform Kubernetes Provider

Installation

Pre-built Binaries

Download Binary from GitHub releases page.

Build from source

See below

Homebrew

$ brew install k2tf

asdf

Use the asdf-k2tf plugin.

Example Usage

Convert a single YAML file and write generated Terraform config to Stdout

$ k2tf -f test-fixtures/service.yaml

Convert a single YAML file and write output to file

$ k2tf -f test-fixtures/service.yaml -o service.tf

Convert a directory of Kubernetes YAML files

$ k2tf -f test-fixtures/

Read & convert Kubernetes objects directly from a cluster

$ kubectl get deployments -o yaml | ./k2tf -o deployments.tf

Building

NOTE Requires a working Golang build environment.

This project uses Golang modules for dependency management, so it can be cloned outside of the $GOPATH.

Clone the repository

$ git clone https://github.com/sl1pm4t/k2tf.git

Build

$ cd k2tf
$ make build

Run Tests

$ make test

Package Rankings
Top 8.17% on Proxy.golang.org
Top 28.42% on Formulae.brew.sh
Badges
Extracted from project README
Build Status Go Report Card Release asciicast Downloads