-
-
Notifications
You must be signed in to change notification settings - Fork 14
FAQs
Commonly asked questions about Terry!
Answer:
Yes! Under the ansible_configuration.default_users
you can create as many users as you like, each with a unique IP address or CIDR and SSH key.
default_users:
terry:
user: terry
public_ip: 8.8.8.8
public_key:
terry2:
user: terry2
public_ip: 8.8.4.4
public_key:
I want to add to my current deployment, but I do not know the server names or GUIDs to reference. Where can I find those?
Answer:
The server names, if not assigned using the command line are randomly generated (as are the GUIDs). To look those up, you can look in <operation-name>/ansible/inventory/hosts
or <operation-name>/.terry/build_manifest.yml
.
Answer:
Since you may have multiple users who may use the same organization and may inadvertently use the same <operation-name>
, a unique GUID is generated for each build. That is used for the core resources like SSH keys where there is one per cloud, per deployment.
Answer: YAML is a funky language that has syntax rules just like any other programming language. If you see an error like the one below, you may want to try wrapping any strings or values in quotes. It also would not hurt to read up on YAML syntax to avoid any gotchas in the future.
Traceback (most recent call last):
File "/opt/terry-the-terraformer/./terry.py", line 551, in <module>
cli()
File "/usr/lib/python3/dist-packages/click/core.py", line 1128, in __call__
return self.main(*args, **kwargs)
File "/usr/lib/python3/dist-packages/click/core.py", line 1053, in main
rv = self.invoke(ctx)
File "/usr/lib/python3/dist-packages/click/core.py", line 1656, in invoke
super().invoke(ctx)
File "/usr/lib/python3/dist-packages/click/core.py", line 1395, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/usr/lib/python3/dist-packages/click/core.py", line 754, in invoke
return __callback(*args, **kwargs)
File "/usr/lib/python3/dist-packages/click/decorators.py", line 26, in new_func
return f(get_current_context(), *args, **kwargs)
File "/opt/terry-the-terraformer/./terry.py", line 113, in cli
config_contents = yaml.safe_load(config_contents)
File "/usr/lib/python3/dist-packages/yaml/__init__.py", line 162, in safe_load
return load(stream, SafeLoader)
File "/usr/lib/python3/dist-packages/yaml/__init__.py", line 114, in load
return loader.get_single_data()
File "/usr/lib/python3/dist-packages/yaml/constructor.py", line 49, in get_single_data
node = self.get_single_node()
File "/usr/lib/python3/dist-packages/yaml/composer.py", line 36, in get_single_node
document = self.compose_document()
File "/usr/lib/python3/dist-packages/yaml/composer.py", line 55, in compose_document
node = self.compose_node(None, None)
File "/usr/lib/python3/dist-packages/yaml/composer.py", line 84, in compose_node
node = self.compose_mapping_node(anchor)
File "/usr/lib/python3/dist-packages/yaml/composer.py", line 133, in compose_mapping_node
item_value = self.compose_node(node, item_key)
File "/usr/lib/python3/dist-packages/yaml/composer.py", line 84, in compose_node
node = self.compose_mapping_node(anchor)
File "/usr/lib/python3/dist-packages/yaml/composer.py", line 133, in compose_mapping_node
item_value = self.compose_node(node, item_key)
File "/usr/lib/python3/dist-packages/yaml/composer.py", line 84, in compose_node
node = self.compose_mapping_node(anchor)
File "/usr/lib/python3/dist-packages/yaml/composer.py", line 133, in compose_mapping_node
item_value = self.compose_node(node, item_key)
File "/usr/lib/python3/dist-packages/yaml/composer.py", line 84, in compose_node
node = self.compose_mapping_node(anchor)
File "/usr/lib/python3/dist-packages/yaml/composer.py", line 127, in compose_mapping_node
while not self.check_event(MappingEndEvent):
File "/usr/lib/python3/dist-packages/yaml/parser.py", line 98, in check_event
self.current_event = self.state()
File "/usr/lib/python3/dist-packages/yaml/parser.py", line 428, in parse_block_mapping_key
if self.check_token(KeyToken):
Answer:
As a general rule of thumb, always try running commands manually before automating them. In Terry's case, things can break, but first isolate your issue. On your local system, make sure you can run docker login -u <username> -p <password> https://path/to/registry
Use Terry at your own risk. I do not claim responsibility for any changes to the code that may break your configurations. I also do not condone any illegal actions performed after using this tool.