A client for HashiCorp Terraform Cloud
Project description
Terraform Cloud Client
An API client for HashiCorp's Terraform Cloud
Installation
$ pip install terraform-cloud-client
This client is only tested on python 3.7
Usage as a library
Set up:
>>> import tfc
>>> client = tfc.TerraformClient("my_api_token", "my_organization", "my_workspace")
Get Terraform variables:
>>> variables = client.get_variables()
>>> variables
{
'my_username': <TerraformVariable id='var-someid1', name='my_username', value='john_doe'>,
'my_password': <TerraformVariable id='var-someid2', name='my_password', sensitive>,
}
>>> username_variable = variables['my_username']
>>> username_variable.id
'var-someid1'
>>> username_variable.name
'my_username'
>>> username_variable.value
'john_doe'
Change the value of a variable:
>>> client.update_variable(variable_id=username_variable.id, new_value='jane_doe')
Trigger a run:
>>> run = client.create_run('My message')
>>> run.id
'run-someid'
>>> run.url # Go here in a web browser to view the run
'https://app.terraform.io/app/my_organization/workspaces/my_workspace/runs/run-someid'
Usage as a command line tool
Installing this via pip also installs a tfc
command line tool
$ tfc --help
usage: tfc [-h] [--message MESSAGE]
organization workspace [name=value [name=value ...]]
Trigger a Terraform Cloud run
positional arguments:
organization The name of your organization in Terraform Cloud
workspace The name of your workspace in Terraform Cloud
name=value Set terraform variable NAME to VALUE before creating
the run
optional arguments:
-h, --help show this help message and exit
--message MESSAGE, -m MESSAGE
The message to be associated with this run
Put your API token in the TERRAFORM_CLOUD_TOKEN environment variable
So for example:
$ tfc my_organization my_workspace foo=baz --message="Reticulating splines"
Updated 'foo' from 'bar' to 'baz'
Created run run-g6SmSsLVKg71yeNw - check status at: https://app.terraform.io/app/my_organization/workspaces/my_workspace/runs/run-g6SmSsLVKg71yeNw
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for terraform-cloud-client-0.0.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3550007923f4fc87efa980da1006f6cca04b8a12a7b34f167d5cc7de21ccded9 |
|
MD5 | 8e838428c509402a43b66d0eaa8f070b |
|
BLAKE2b-256 | b2ddb54a69f20030421c3c78e38c911d2b0ee26d7cdb245044e5dc9a6e173a05 |
Close
Hashes for terraform_cloud_client-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f221a5dfea1a5f138394c31aa0212451f6123b5a8873205bc5aec8875e42554e |
|
MD5 | 3c2063163da1e612b82e793989fdb32c |
|
BLAKE2b-256 | ee471b135960ab5d60c58205533decd503b87dcced5e1419ef6b17643efd7e48 |