terraform-inventory - Terraform State → Ansible Dynamic Inventory

  •        51

This is a little Go app which generates a dynamic Ansible inventory from a Terraform state file. It allows one to spawn a bunch of instances with Terraform, then (re-)provision them with Ansible. It's very simple to add support for new providers. See pull requests with the provider label for examples.

https://github.com/adammck/terraform-inventory

Tags
Implementation
License
Platform

   




Related Projects

terraform-provisioner-ansible - A provisioner for bootstrapping terraform resources with ansible

  •    Go

Terraform is a tool for automating infrastructure. Terraform includes the ability to provision resources at creation time through a plugin api. Currently, some builtin provisioners such as chef and standard scripts are provided; this provisioner introduces the ability to provision an instance at creation time with ansible. This provisioner provides the ability to apply host-groups, plays or roles against a host at provision time. Ansible is run on the host itself and this provisioner configures a dynamic inventory on the fly as resources are created.

kitchen-terraform - Test Kitchen plugins for testing Terraform configurations

  •    Ruby

Kitchen-Terraform enables verification of Terraform state. Kitchen-Terraform provides a set of Test Kitchen plugins which enable a system to use Test Kitchen to converge a Terraform configuration and verify the resulting Terraform state with InSpec controls.

terraform.py - Ansible dynamic inventory script for parsing Terraform state files

  •    Python

Make sure that you've annotated your resources with "tags" that correspond to the sshUser for the machine.

terraform-up-and-running-code - Code samples for the book "Terraform: Up & Running" by Yevgeniy Brikman

  •    HCL

This repo contains the code samples for the book Terraform: Up and Running by Yevgeniy Brikman. All the code is in the code folder. It is organized by language (terraform, bash, ruby, etc) and within each language, by chapter. Since this code comes from a book about Terraform, the vast majority of the code consists of Terraform examples in the code/terraform folder.

terragrunt - Terragrunt is a thin wrapper for Terraform that provides extra tools for working with multiple Terraform modules

  •    Go

Terragrunt is a thin wrapper for Terraform that provides extra tools for keeping your Terraform configurations DRY, working with multiple Terraform modules, and managing remote state. Install Terraform.


terraformer - CLI tool to generate terraform files from existing infrastructure (reverse Terraform)

  •    Go

CLI tool to generate tf and tfstate files from existing infrastructure (reverse Terraform). Terraformer use terraform providers and built for easy to add new supported resources. For upgrade resources with new fields you need upgrade only terraform providers.

vim-terraform - basic vim/terraform integration

  •    Vim

This plugin, along with others like it, is now maintained by the HashiVim organization, which is looking for additional maintainers and contributors. See the HashiVim home page for further information. This plugin adds a :Terraform command that runs terraform, with tab completion of subcommands. It also sets up *.tf, *.tfvars, and *.tfstate files to be highlighted as HCL, HCL, and JSON respectively.

awesome-terraform - Curated list of resources on HashiCorp's Terraform

  •    

Terraform enables you to safely and predictably create, change, and improve production infrastructure. It is an open source tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned. For more Community Modules not listed here please see the Terraform Module Registry.

terraform-provider-helm - Terraform Helm provider

  •    Go

This is a Helm provider for Terraform. The provider manages the installed Charts in your Kubernetes cluster, in the same way of Helm does, through Terraform. It will also install Tiller automatically if it is not already present.

terraform-provider-oci - Terraform Oracle Cloud Infrastructure provider

  •    Go

The OCI Terraform Provider is now available for automatic download through the Terraform Provider Registry. For more information on how to get started view the documentation and setup guide. Note: You may use any version 1.8 or above to build the provider. However, the goimports, go vet, and gofmt code checks will only pass when using version 1.11.

kubeform - Form your :boat: Kubernetes :anchor: cluster anywhere using CoreOS, Terraform and Ansible

  •    Python

Deploy yourself a high-availability Kubernetes cluster, in minutes. Built on Terraform, CoreOS and Ansible.Our recipes for bootstrapping HA Kubernetes clusters on any cloud or on-premise.

tack - Terraform module for creating Kubernetes cluster running on Container Linux by CoreOS in an AWS VPC

  •    HCL

Opinionated Terraform module for creating a Highly Available Kubernetes cluster running on Container Linux by CoreOS (any channel) in an AWS Virtual Private Cloud VPC. With prerequisites installed make all will simply spin up a default cluster; and, since it is based on Terraform, customization is much easier than CloudFormation.The default configuration includes Kubernetes add-ons: DNS, Dashboard and UI.

terraform-ecs - AWS ECS terraform module

  •    HCL

This repository contains the Terraform modules for creating a production ready ECS in AWS. To understand ECS it is good to state the obvious differences against the competitors like Kubernetes or DC/OS Mesos. The mayor differences are that ECS can not be run on-prem and that it lacks advanced features. These two differences can either been seen as weakness or as strengths.

tflint - TFLint is a Terraform linter for detecting errors that can not be detected by `terraform plan`

  •    Go

If you run terraform apply for this template, it will obviously produce an error. However, terraform plan can get an execution plan without causing an error. This is often not a desirable result. In order to solve this problem, TFLint validates values used in template. Download binary built for your architecture from latest releases. After downloading, place the binary on the directory on the PATH. The following example is the installation in macOS.

terraform-provider-aws - Terraform AWS provider

  •    Go

If you're building the provider, follow the instructions to install it as a plugin. After placing it into your plugins directory, run terraform init to initialize it. Documentation about the provider specific configuration options can be found on the provider's website. If you wish to work on the provider, you'll first need Go installed on your machine (version 1.11+ is required). You'll also need to correctly setup a GOPATH, as well as adding $GOPATH/bin to your $PATH.

terraform-provider-azurerm - Terraform provider for Azure Resource Manager

  •    Go

Further usage documentation is available on the Terraform website. If you wish to work on the provider, you'll first need Go installed on your machine (version 1.11+ is required). You'll also need to correctly setup a GOPATH, as well as adding $GOPATH/bin to your $PATH.

terraform-docs - Generate docs from terraform modules

  •    Go

terraform-docs(1) ⋅ a quick utility to generate docs from terraform modules.

terraform-aws-vpc - Terraform module which creates VPC resources on AWS

  •    HCL

Terraform module which creates VPC resources on AWS. By default this module will provision new Elastic IPs for the VPC's NAT Gateways. This means that when creating a new VPC, new IPs are allocated, and when that VPC is destroyed those IPs are released. Sometimes it is handy to keep the same IPs even after the VPC is destroyed and re-created. To that end, it is possible to assign existing IPs to the NAT Gateways. This prevents the destruction of the VPC from releasing those IPs, while making it possible that a re-created VPC uses the same IPs.

kubernetes-digitalocean-terraform - :clipboard: :ocean: :earth_americas: Setup a simple Kubernetes cluster in Digital Ocean using Terraform

  •    HCL

Deploy your Kubernetes cluster on DigitalOcean using Terraform. Do all the following steps from a development machine. It does not matter where it is, as long as it is connected to the internet. This one will be subsequently used to access the cluster via kubectl.

atlantis - Terraform For Teams

  •    Go

A self-hosted golang application that listens for Terraform pull request events via webhooks. Runs terraform plan and apply remotely and comments back on the pull request with the output.