Skip to main content

A Python client for the Terraform Cloud API

Project description

terrasnek

CircleCI codecov PyPI version Documentation Status GitHub issues GitHub license API Method Support

A Python Client for the Terraform Cloud API.


Overview

The goal of this project is to support all endpoints available in the Terraform Cloud API. It's possible that some of these endpoints won't work if you're working against an older version of Terraform Enterprise.

Note: This project is tested against Terraform Enterprise often, but the code coverage represented in this repo will always represent coverage against Terraform Cloud Business Tier (skipping all admin_ modules), so the coverage percentage is higher than represented in the badge.

Terraform Enterprise Release Notes This repo has been updated as of TFE version 202007-2.

Note: Terraform Enterprise is the self-hosted distribution of Terraform Cloud. It offers enterprises a private instance of the Terraform Cloud application, with no resource limits and with additional enterprise-grade architectural features like audit logging and SAML single sign-on.

Using terrasnek

For more details on using each endpoint, check out the docs or the test directory. I also wrote a blog post showing how this library can be used.

from terrasnek.api import TFC
import os

TFC_TOKEN = os.getenv("TFC_TOKEN", None)
TFC_URL = os.getenv("TFC_URL", None)  # ex: https://app.terraform.io
# set to True if you want to use HTTP or insecure HTTPS
SSL_VERIFY = os.getenv("SSL_VERIFY", None)

if __name__ == "__main__":
    api = TFC(TFC_TOKEN, url=TFC_URL, ssl_verify=SSL_VERIFY)
    api.set_org("YOUR_ORGANIZATION")

terrasnek to Terraform Cloud API Spec Parity

To see the which endpoints are implemented in terrasnek compared to those that are listed on the Terraform Cloud API docs, view the auto-generated API_PARITY_TABLE.md file.

terrasnek Common Use Case Examples

See the terrasnek documentation.

Contributing to terrasnek

If you'd like to contribute to terrasnek, review CONTRIBUTING.md.


Note: This repo is not officially maintained by HashiCorp.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

terrasnek-0.0.8.tar.gz (47.8 kB view details)

Uploaded Source

Built Distribution

terrasnek-0.0.8-py3-none-any.whl (96.9 kB view details)

Uploaded Python 3

File details

Details for the file terrasnek-0.0.8.tar.gz.

File metadata

  • Download URL: terrasnek-0.0.8.tar.gz
  • Upload date:
  • Size: 47.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.1.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.4

File hashes

Hashes for terrasnek-0.0.8.tar.gz
Algorithm Hash digest
SHA256 3fb972e835c5ab33c0c6ef95140df45bacbb0496bf959fdb4c18bf6b855c41a8
MD5 a9f1c7f8a1495395a94c59b6de06e9d5
BLAKE2b-256 e347980b77fd9104a9d881f9561e4b3c19200fa4ac2d874efefe7f3d7cf5c8d4

See more details on using hashes here.

File details

Details for the file terrasnek-0.0.8-py3-none-any.whl.

File metadata

  • Download URL: terrasnek-0.0.8-py3-none-any.whl
  • Upload date:
  • Size: 96.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.1.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.4

File hashes

Hashes for terrasnek-0.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 b33064ead5ee9ff5abf49f5f0463f33897dd86add6f3ad0797d124ec34d8b127
MD5 adeb15174c19943612ee536b7e0675c0
BLAKE2b-256 74459379a3bc30409b29c056a52165c838b0854399e1f28aec75d3db2d88f0f5

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page