FAQs - ezra-buckingham/terry-the-terraformer GitHub Wiki

Commonly asked questions about Terry!

Can I add multiple users and IP addresses to my builds?

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.

Why are GUIDs assigned as names for resources?

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.

I am seeing a weird YAML error. How can I fix that?

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):

I am seeing errors when logging into my container registry, what should I do?

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

⚠️ **GitHub.com Fallback** ⚠️