Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

More types of output for unfurl status #181

Open
detjensrobert opened this issue Feb 7, 2023 · 0 comments
Open

More types of output for unfurl status #181

detjensrobert opened this issue Feb 7, 2023 · 0 comments
Assignees

Comments

@detjensrobert
Copy link
Contributor

detjensrobert commented Feb 7, 2023

Debugging types ordering would be easier with some improvements to the unfurl plan / unfurl status outputs:

a) plan should show the type in addition to the resource name
b) plan should show the known properties/attributes of the resource (when verbose)
c) plan should report what dependencies a node is waiting on

#    a):
Node unfurl.nodes.HttpsProxyContainerComputeHost "dockerhost" (pending):
# b):
- variables:
    protocol: https
    ports: [443]
    subdomain: foo
    public_dns: foo.domain.com
    # etc
- deploy:
    - operation create (reason: add)
       rendered at .../planned/tasks/dockerhost
       rendered at .../planned/secrets/dockerhost
    - operation configure (reason: add)
#    a):
Node unfurl.nodes.EC2Compute "nxcvm" (pending):
- deploy:
    - operation create (reason: add)
                                     # c):
       (render waiting for dependents: "dockerhost", "...")
  • Some sort of graph output for dependencies in an ensemble would also be helpful for seeing all of the dependencies of an object.

Something like unfurl (plan|status) --graph that outputs Graphviz with the relationship names:
graph2.png

digraph G {
  rankdir = BT

  "dockerhost"                [label=<dockerhost<br/><font color="blue" point-size="8">unfurl.nodes.HttpsProxyContainerComputeHost</font>>]
  "dockerhost-aws-bootimage"  [label=<dockerhost-aws-bootimage<br/><font color="blue" point-size="8">unfurl.nodes.AMIBootImage</font>>]
  "aws_metadata"              [label=<aws_metadata<br/><font color="blue" point-size="8">unfurl.nodes.AWSMetadata</font>>]
  "__dns-zone"                [label=<__dns-zone<br/><font color="blue" point-size="8">UnfurlUserDNSZone</font>>]
  "aws-ebs-volume"            [label=<aws-elastic-block-storage-volume<br/><font color="blue" point-size="8">AwsVolume</font>>]
  "nxcvm"                     [label=<nxcvm<br/><font color="blue" point-size="8">unfurl.nodes.EC2Compute</font>>]
  "volume"                    [label=<volume<br/><font color="blue" point-size="8">AwsVolumeAttachment</font>>]

  "aws_metadata" -> "dockerhost-aws-bootimage"
  "nxcvm" -> "aws_metadata"
  "nxcvm" -> "dockerhost"

  "__dns-zone" -> "nxcvm"
  "aws-ebs-volume" -> "nxcvm"

  "volume" -> "nxcvm"           [label=<<font color="red">.source</font>>]
  "volume" -> "aws-ebs-volume"  [label=<<font color="red">.target</font>>]
 
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants