Skip to content

skierkowski/terraform-enterprise-client

Repository files navigation

Terraform Enterprise API Client

A simple Ruby API client library for the Terraform Enterprise API.

Gem Version Maintainability Test Coverage Inline docs

NOTE: The command line tool has moved to skierkowski/terraform-enterprise-cli.

Requirements

MRI Ruby 2.3 and newer are supported. Alternative interpreters compatible with 2.3+ should work as well.

This gem depends on these other gems for usage at runtime:

API Client

Usage

Basic Example

require 'terraform-enterprise-client'

token = ENV['TFE_TOKEN']
client = TerraformEnterprise::API::Client.new(token: token)

# Create a new organization
org = client.organizations.create(name:'my-org',email:'maciej@skierkowski.com')

# Create a new workspace in the new organization.
# Uses the same parameters as the following docs:
# https://www.terraform.io/docs/enterprise/api/workspaces.html
client.workspaces.create(name:'my-new-workspace', organization:'my-org')

# Delete the workspace
client.workspaces.delete(name:'my-new-workspace', organization: 'my-org')

# Delete the organization now that we are done
client.organizations.delete(name:'my-org')

Configuration

There are two main settings that can be modified on initialization:

  • :token (required) - which specifies the API key (formerly called ATLAS_TOKEN)
  • :host - a hostname other than the default (app.terraform.io) for usage with private installs

Releases

No releases published

Packages

No packages published

Languages