Giter Site home page Giter Site logo

inkdrop-org / inkdrop-visualizer Goto Github PK

View Code? Open in Web Editor NEW
435.0 3.0 16.0 7.03 MB

Visualizes your Terraform

Home Page: https://inkdrop.ai/

License: Mozilla Public License 2.0

JavaScript 3.77% HTML 0.25% TypeScript 94.01% CSS 0.32% Dockerfile 0.25% Shell 1.39%
atlantis aws cloud devops terraform visualization

inkdrop-visualizer's People

Contributors

albschi avatar blackillzone avatar dant2021 avatar robbert229 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

inkdrop-visualizer's Issues

Unknown block type

Hello, It seem external module not supported still?

Computing terraform graph...
Diagram renderer running on localhost:3000
LOG: Detailed view is off.
LOG: Unchanged resources are shown.
LOG: Full opacity for unchanged resources is off.
ERR: DotSyntaxError: Expected "#", "/*", "//", "digraph", "graph", or "strict" but end of input found.
Creating SVG of the diagram...
LOG: Detailed view is off.
LOG: Unchanged resources are shown.
LOG: Full opacity for unchanged resources is off.
LOG: Aggregating multiple states graphs...
LOG: Terraform plan detected.
LOG: Adding main resources...
WARN: Unknown block type auth0_tenant.tenant
WARN: Unknown block type auth0_branding.branding
WARN: Unknown block type auth0_branding_theme.branding_theme
WARN: Unknown block type auth0_prompt.prompt
WARN: Unknown block type auth0_prompt_custom_text.prompt_custom_text
WARN: Unknown block type auth0_custom_domain.custom_domain
WARN: Unknown block type auth0_custom_domain_verification.custom_domain_verification
WARN: Unknown block type vault_generic_secret.custom_domain_verification_records
WARN: Unknown block type auth0_email_provider.email_provider
WARN: Unknown block type auth0_log_stream.eventgrid
WARN: Unknown block type auth0_email_template.email_template
WARN: Unknown block type auth0_log_stream.datadog
LOG: Aggregating secondary resources...
LOG: Aggregating secondary resources... Done.
WARN: Unknown block type auth0_attack_protection.attack_protection
WARN: Unknown block type auth0_guardian.guardian
LOG: Adding main resources... Done.
LOG: Removing inactive resources... Done.
LOG: Computing connections...
LOG: Computing connections... Done.
LOG: Removing inactive resources...
Writing 'inkdrop-ci-data_24-06-04_12-46-39.json'...
Empty diagram detected. No SVG will be created.

arm64 packages

Hello,

Could you please provide arm64 versions of the packages when releasing a new version ?

Thanks a lot!

Unknown block type

Hey,

is it possible, that (nested) modules are not supported?

Most of our code is separated by modules and I'm only getting these warnings and the svg is nearly empty:

Computing raw graph...
Processing raw graph...
WAR Unknown block type module.vanity_url.aws_acm_certificate.url
WAR Unknown block type module.vanity_url.aws_acm_certificate_validation.url
WAR Unknown block type module.vanity_url.aws_route53_record.url
WAR Unknown block type module.vanity_url.aws_route53_record.validation_url
WAR Unknown block type module.vanity_url.data.aws_route53_zone.this
WAR Unknown block type module.acm.aws_acm_certificate.this
WAR Unknown block type module.acm.aws_route53_record.certvalidation
WAR Unknown block type module.backup.aws_backup_plan.default_1yr
WAR Unknown block type module.backup.aws_backup_plan.default_35days
WAR Unknown block type module.backup.aws_backup_plan.default_7days
WAR Unknown block type module.backup.aws_backup_selection.default-35days-tags
WAR Unknown block type module.backup.aws_backup_selection.default-7days-tags
WAR Unknown block type module.backup.aws_backup_selection.default-tags-1
WAR Unknown block type module.backup.aws_backup_selection.default-tags-2
WAR Unknown block type module.backup.aws_backup_vault.default_vault
WAR Unknown block type module.cloudtrail.aws_cloudtrail.regional
WAR Unknown block type module.cloudtrail.aws_cloudwatch_log_group.cloudtrail
WAR Unknown block type module.cloudwatch.aws_cloudwatch_log_group.ec2
WAR Unknown block type module.cloudwatch.aws_cloudwatch_log_group.ec2_patchmanagement

Bug: Modules not rendering if a count is used

It appears there is an issue with modules (and possibly other resources as well), not being recognized if a count conditional is used. I believe it may be related to the index not being parsed properly from the plan output.

The only difference between these two diagrams from a code perspective is commenting out count = var.enable_eks_cicd_workers ? 1 : 0 and the worker group is enabled in both scenarios.

Module With Count Usage

eks-with-count

Module Without Count Usage

eks-without-count

stdout maxBuffer length exceeded

Hi, I'm getting the below error when running inkdrop in my TF directory.
Running inkdrop just hangs forever
Running inkdrop --from-plan plan.out produces the below error.

NPM: 10.4.0
OS: Ubuntu 20.04

$: inkdrop --from-plan plan.out

`Diagram renderer running on localhost:3000
node:child_process:490
ex = new ERR_CHILD_PROCESS_STDIO_MAXBUFFER('stdout');
^

RangeError [ERR_CHILD_PROCESS_STDIO_MAXBUFFER]: stdout maxBuffer length exceeded
at Socket.onChildStdout (node:child_process:490:14)
at Socket.emit (node:events:518:28)
at addChunk (node:internal/streams/readable:559:12)
at readableAddChunkPushByteMode (node:internal/streams/readable:510:3)
at Readable.push (node:internal/streams/readable:390:5)
at Pipe.onStreamRead (node:internal/stream_base_commons:190:23) {
code: 'ERR_CHILD_PROCESS_STDIO_MAXBUFFER',
cmd: 'terraform show -json .../terraform/plan.out',
stdout:... 1038570 more characters`

Fails if only tofu is installed

Hey, looks like a super neat tool. Hoping this will be an easy fix, but it looks like if a user is using OpenTofu instead of terraform, and doesn't have terraform installed at all, then the diagram fails to render

Diagram renderer running on localhost:3000
Error while running 'terraform show -json':
Error: Command failed: terraform show -json "/path/to/my/plan/plan.out"
/bin/sh: terraform: command not found

Support any kind of resources

Hi,

As discussed with Antoine on LinkedIn, I think it would be great to add support for any kind of resources.

I mainly use Azure, GCP, Kubernetes providers but I guess it would be enough to have some default display with unsupported resources (my understanding is that you did AWS because you had the use case and the icons in hands) but TF/TOFU providers list is quite long . So a strategy to integrate beautifuly the 80% more used would be nice, but be able to display all kind of resources regardless of their provider would be awesomer

I suppose we can use some kind of regex to display the relevant information even if it's not 100% eye-candy
example:

^(?'provider'[a-z]+)_(?'resourcetype'[a-z_]+)$

Then display those information in the resource square as you do for supported resources but with text ?

Add License

May you add licensing information to the project?

Would appreciate it!

cheers
flash โšก

rm command not recognized

let me start with, is inkdrop compatible with windows? because why is it running rm command in windows

OS : windows 10
node: 20.14.0
npm: 10.8.1
inkdrop: 1.1.49

when I run inkdrop I'm getting the below error, debug didn't give out any more log

Diagram renderer running on localhost:3000
Computing terraform graph...
node:internal/errors:984
  const err = new Error(message);
              ^

Error: Command failed: rm -rf ./tmp-tf-cache-inkdrop
'rm' is not recognized as an internal or external command,
operable program or batch file.

    at genericNodeError (node:internal/errors:984:15)
    at wrappedFn (node:internal/errors:538:14)
    at ChildProcess.exithandler (node:child_process:422:12)
    at ChildProcess.emit (node:events:519:28)
    at maybeClose (node:internal/child_process:1105:16)
    at ChildProcess._handle.onexit (node:internal/child_process:305:5) {    
  code: 1,
  killed: false,
  signal: null,
  cmd: 'rm -rf ./tmp-tf-cache-inkdrop',
  stdout: '',
  stderr: "'rm' is not recognized as an internal or external command,\r\n" +
    'operable program or batch file.\r\n'
}
Node.js v20.14.0

let me know if any more info is required

Browser extension support for Brave browser

Hello team!

Thanks for the fantastic project. We're considering using it for its potential to enhance our code reviews. ๐ŸŽ‰

I have a question: to make the diagram interactive, a browser extension is required. It works perfectly on Chrome, but not on the Brave browser. Could you possibly extend support to Brave? Also, I apologize in advance if this issue is misplaced in this repository, but it seemed the most effective way to get your attention compared to posting a review on the extensions marketplace. ๐Ÿ™‡

stdout maxBuffer length exceeded

Encountering the same issue as described here on large terraform statefile plans:

Computing terraform graph... Error while running 'terraform show -json': RangeError [ERR_CHILD_PROCESS_STDIO_MAXBUFFER]: stdout maxBuffer length exceeded

I am using version 1.1.49. For smaller plan.out there are no issues

After building docker image with increased maxBuffer inkdrop works as expected on larger plans

No valid Terraform resources found in graph.

Hello,

I am getting this response from inkdrop on a few of my repos. They are typically ones that do not have much of a drift when it comes to terraform changes.

I am using inkdrop 1.1.44

In this particular case I have created the terraform plan which shows no new changes.
If I run this command locally everything seems to work fine and I can view all my resources:
inkdrop plan.out --opacity-full --show-unchanged --debug

However if I run this with the --ci flag:
inkdrop plan.out --opacity-full --show-unchanged --ci --debug
I get the error
No valid Terraform resources found in graph.

Full debug output is here. Any insights you can offer would be appreciated. I have this on most of my repos now and is working great except for these edge cases.

Diagram renderer running on localhost:3000
Computing terraform graph...
Creating SVG of the diagram...

  Degraded performance warning:
  Launching Chrome on Mac Silicon (arm64) from an x64 Node installation results in
  Rosetta translating the Chrome binary, even if Chrome is already arm64. This would
  result in huge performance issues. To resolve this, you must run Puppeteer with
  a version of Node built for arm64.
LOG: Detailed view is off.
LOG: Unchanged resources are shown.
LOG: Full opacity for unchanged resources is on.
LOG: Aggregating multiple states graphs...
LOG: Terraform plan detected.
LOG: Adding main resources...
LOG: Adding main resource: aws_cloudwatch_log_group.vpn
LOG: Adding main resource: aws_iam_role.datasync-s3-access-role
LOG: Adding main resource: aws_security_group.endpoint_sg
LOG: Adding main resource: aws_security_group.vpn
WARN: Unknown block type datadog_monitor.efs_percent_iolimit
WARN: Unknown block type datadog_monitor.natgw_usage
LOG: Adding main resource: module.vpc.aws_cloudwatch_log_group.flow_log
LOG: Adding main resource: module.vpc.aws_db_subnet_group.database
LOG: Adding main resource: module.vpc.aws_iam_policy.vpc_flow_log_cloudwatch
LOG: Adding main resource: module.vpc.aws_iam_role.vpc_flow_log_cloudwatch
LOG: Adding main resource: module.vpc.aws_internet_gateway.this
LOG: Adding main resource: module.vpc.aws_nat_gateway.this
LOG: Adding main resource: module.vpc.aws_subnet.database
LOG: Adding main resource: module.vpc.aws_subnet.elasticache
LOG: Adding main resource: module.vpc.aws_subnet.intra
LOG: Adding main resource: module.vpc.aws_subnet.outpost
LOG: Adding main resource: module.vpc.aws_subnet.private
LOG: Adding main resource: module.vpc.aws_vpc.this
LOG: Adding main resource: module.vpc.aws_vpn_gateway.this
LOG: Adding main resources... Done.
LOG: Adding main resource: module.vpc.aws_subnet.public
LOG: Adding main resource: module.vpc.aws_subnet.redshift
LOG: Aggregating resource: aws_cloudwatch_log_stream.vpn	->	aws_cloudwatch_log_group.vpn
LOG: Aggregating secondary resources...
LOG: Aggregating resource: data.aws_iam_policy_document.datasync_assume_role	->	aws_iam_role.datasync-s3-access-role
LOG: Aggregating resource: aws_iam_role_policy.datasync-s3-access-policy	->	aws_iam_role.datasync-s3-access-role
LOG: Aggregating resource: data.aws_iam_policy_document.bucket_access	->	aws_iam_role.datasync-s3-access-role
LOG: Aggregating resource: module.vpc.aws_route.database_internet_gateway	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.data.aws_iam_policy_document.vpc_flow_log_cloudwatch	->	module.vpc.aws_iam_policy.vpc_flow_log_cloudwatch
LOG: Aggregating resource: module.vpc.aws_iam_role_policy_attachment.vpc_flow_log_cloudwatch	->	module.vpc.aws_iam_policy.vpc_flow_log_cloudwatch
LOG: Aggregating resource: module.vpc.data.aws_iam_policy_document.flow_log_cloudwatch_assume_role	->	module.vpc.aws_iam_role.vpc_flow_log_cloudwatch
LOG: Aggregating resource: module.vpc.aws_route_table.database	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route.database_ipv6_egress	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_egress_only_internet_gateway.this	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route.database_dns64_nat_gateway	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route.private_ipv6_egress	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route_table.private	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route.private_dns64_nat_gateway	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route.private_nat_gateway	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route_table_association.database	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route_table_association.elasticache	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route_table.elasticache	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route_table_association.outpost	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route_table_association.private	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route_table_association.redshift	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route_table.redshift	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route.public_internet_gateway	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route_table_association.redshift_public	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route_table.public	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route.public_internet_gateway_ipv6	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route_table_association.public	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_route.database_nat_gateway	->	module.vpc.aws_internet_gateway.this
LOG: Aggregating resource: module.vpc.aws_network_acl.database	->	module.vpc.aws_subnet.database
LOG: Aggregating resource: module.vpc.aws_network_acl_rule.database_inbound	->	module.vpc.aws_subnet.database
LOG: Aggregating resource: module.vpc.aws_network_acl_rule.database_outbound	->	module.vpc.aws_subnet.database
LOG: Aggregating resource: module.vpc.aws_network_acl.elasticache	->	module.vpc.aws_subnet.elasticache
LOG: Aggregating resource: module.vpc.aws_network_acl_rule.elasticache_inbound	->	module.vpc.aws_subnet.elasticache
LOG: Aggregating resource: module.vpc.aws_network_acl_rule.elasticache_outbound	->	module.vpc.aws_subnet.elasticache
LOG: Aggregating resource: module.vpc.aws_network_acl.intra	->	module.vpc.aws_subnet.intra
LOG: Aggregating resource: module.vpc.aws_network_acl_rule.intra_inbound	->	module.vpc.aws_subnet.intra
LOG: Aggregating resource: module.vpc.aws_network_acl_rule.intra_outbound	->	module.vpc.aws_subnet.intra
LOG: Aggregating resource: module.vpc.aws_route_table_association.intra	->	module.vpc.aws_subnet.intra
LOG: Aggregating resource: module.vpc.aws_route_table.intra	->	module.vpc.aws_subnet.intra
LOG: Aggregating resource: module.vpc.aws_network_acl.outpost	->	module.vpc.aws_subnet.outpost
LOG: Aggregating resource: module.vpc.aws_network_acl_rule.outpost_inbound	->	module.vpc.aws_subnet.outpost
LOG: Aggregating resource: module.vpc.aws_network_acl_rule.outpost_outbound	->	module.vpc.aws_subnet.outpost
LOG: Aggregating resource: module.vpc.aws_network_acl.private	->	module.vpc.aws_subnet.private
LOG: Aggregating resource: module.vpc.aws_network_acl_rule.private_inbound	->	module.vpc.aws_subnet.private
LOG: Aggregating resource: module.vpc.aws_network_acl_rule.private_outbound	->	module.vpc.aws_subnet.private
LOG: Aggregating resource: module.vpc.aws_network_acl.public	->	module.vpc.aws_subnet.public
LOG: Aggregating resource: module.vpc.aws_network_acl_rule.public_inbound	->	module.vpc.aws_subnet.public
LOG: Aggregating resource: module.vpc.aws_network_acl_rule.public_outbound	->	module.vpc.aws_subnet.public
LOG: Aggregating resource: module.vpc.aws_network_acl.redshift	->	module.vpc.aws_subnet.redshift
LOG: Aggregating resource: module.vpc.aws_network_acl_rule.redshift_inbound	->	module.vpc.aws_subnet.redshift
LOG: Aggregating resource: module.vpc.aws_network_acl_rule.redshift_outbound	->	module.vpc.aws_subnet.redshift
LOG: Aggregating resource: module.vpc.aws_default_network_acl.this	->	module.vpc.aws_vpc.this
LOG: Aggregating resource: module.vpc.aws_default_route_table.default	->	module.vpc.aws_vpc.this
LOG: Aggregating resource: module.vpc.aws_default_security_group.this	->	module.vpc.aws_vpc.this
LOG: Aggregating resource: module.vpc.aws_vpc_ipv4_cidr_block_association.this	->	module.vpc.aws_vpc.this
LOG: Aggregating resource: module.vpc.aws_vpn_gateway_route_propagation.intra	->	module.vpc.aws_vpn_gateway.this
LOG: Aggregating resource: module.vpc.aws_vpn_gateway_attachment.this	->	module.vpc.aws_vpn_gateway.this
LOG: Aggregating resource: module.vpc.aws_vpn_gateway_route_propagation.private	->	module.vpc.aws_vpn_gateway.this
LOG: Aggregating resource: module.vpc.aws_vpn_gateway_route_propagation.public	->	module.vpc.aws_vpn_gateway.this
LOG: Aggregating secondary resources... Done.
LOG: Removing inactive resources...
LOG: Removing inactive main resource: module.vpc.aws_subnet.outpost
LOG: Removing inactive main resource: module.vpc.aws_vpn_gateway.this
LOG: Removing inactive secondary resource: data.aws_iam_policy_document.datasync_assume_role
LOG: Removing inactive secondary resource: data.aws_iam_policy_document.bucket_access
LOG: Removing inactive secondary resource: module.vpc.data.aws_iam_policy_document.vpc_flow_log_cloudwatch
LOG: Removing inactive secondary resource: module.vpc.data.aws_iam_policy_document.flow_log_cloudwatch_assume_role
LOG: Removing inactive secondary resource: module.vpc.aws_route.database_dns64_nat_gateway
LOG: Removing inactive secondary resource: module.vpc.aws_route.private_dns64_nat_gateway
LOG: Removing inactive secondary resource: module.vpc.aws_route_table_association.outpost
LOG: Removing inactive secondary resource: module.vpc.aws_route_table_association.redshift_public
LOG: Removing inactive secondary resource: module.vpc.aws_route.database_nat_gateway
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl.database
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl_rule.database_inbound
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl_rule.database_outbound
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl.elasticache
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl_rule.elasticache_inbound
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl_rule.elasticache_outbound
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl.intra
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl_rule.intra_inbound
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl_rule.intra_outbound
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl.private
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl_rule.private_inbound
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl_rule.private_outbound
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl.public
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl_rule.public_inbound
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl.redshift
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl_rule.redshift_inbound
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl_rule.redshift_outbound
LOG: Removing inactive secondary resource: module.vpc.aws_vpc_ipv4_cidr_block_association.this
LOG: Removing inactive secondary resource: module.vpc.aws_network_acl_rule.public_outbound
LOG: Computing connections...
LOG: Computing connections... Done.
LOG: Removing inactive resources... Done.
Writing 'inkdrop-ci-data_24-05-13_14-37-32.json'...
No valid Terraform resources found in graph.
Please ensure that you have run Inkdrop inside your Terraform project directory, or specify the path to your Terraform project using the --path argument.

Failed on arm64 mac

Saved the plan to: plan.out

To perform exactly these actions, run the following command to apply:
terraform apply "plan.out"
Diagram renderer running on localhost:3000
Computing raw graph...
Processing raw graph...
Chromium not found in cache, downloading...
Downloading Chromium [========================================] 100% 0.0s

Degraded performance warning:
Launching Chrome on Mac Silicon (arm64) from an x64 Node installation results in
Rosetta translating the Chrome binary, even if Chrome is already arm64. This would
result in huge performance issues. To resolve this, you must run Puppeteer with
a version of Node built for arm64.
/snapshot/inkdrop-visualizer/node_modules/puppeteer-core/lib/cjs/puppeteer/node/ProductLauncher.js:285
throw new Error(Could not find Chrome (ver. ${this.puppeteer.browserRevision}). This can occur if either\n +
^

Error: Could not find Chrome (ver. 121.0.6167.85). This can occur if either

  1. you did not perform an installation before running the script (e.g. npx puppeteer browsers install chrome) or
  2. your cache path is incorrectly configured (which is: /Users/jwoolfenden/.cache/puppeteer).
    For (2), check out our guide on configuring puppeteer at https://pptr.dev/guides/configuration.
    at ChromeLauncher.resolveExecutablePath (/snapshot/inkdrop-visualizer/node_modules/puppeteer-core/lib/cjs/puppeteer/node/ProductLauncher.js:285:27)
    at ChromeLauncher.executablePath (/snapshot/inkdrop-visualizer/node_modules/puppeteer-core/lib/cjs/puppeteer/node/ChromeLauncher.js:210:25)
    at ChromeLauncher.computeLaunchArguments (/snapshot/inkdrop-visualizer/node_modules/puppeteer-core/lib/cjs/puppeteer/node/ChromeLauncher.js:103:37)
    at async ChromeLauncher.launch (/snapshot/inkdrop-visualizer/node_modules/puppeteer-core/lib/cjs/puppeteer/node/ProductLauncher.js:70:28)

Node.js v18.5.0

Tool not finishing correctly

Hey, really excited to try this tool but I can't seem to get it to work.

Trying to run it using a plan file this is the command I'm doing

inkdrop tfplan --detailed --debug

and the logs make it look like it sees real resources in my plan, and its trying to do things (opens the broweser chrome window on locahost:300 and such) , but it inevitably just hangs and never shows a complete render.

Any ideas based off these logs?

Here is the first section

Diagram renderer running on localhost:3000
Computing terraform graph...
LOG: Detailed view is on.
LOG: Unchanged resources are hidden.
LOG: Full opacity for unchanged resources is off.
LOG: Terraform plan detected.
LOG: Adding main resource: module.app_config.module.secret.aws_secretsmanager_secret.this
LOG: Adding main resources...
LOG: Adding main resource: module.acm.module.acm.aws_acm_certificate.this

and here is the end

LOG: Removing inactive secondary resource: module.server_alb_logs_s3.module.s3.aws_s3_bucket_lifecycle_configuration.this
LOG: Removing inactive secondary resource: module.server_alb_logs_s3.module.s3.aws_s3_bucket_replication_configuration.this
LOG: Removing inactive secondary resource: module.server_alb_logs_s3.module.s3.aws_s3_bucket_website_configuration.this
LOG: Removing inactive resources... Done.
LOG: Removing inactive secondary resource: module.server_alb_logs_s3.module.s3.aws_s3_bucket_versioning.this
LOG: Removing unchanged main resource: module.acm.module.acm.aws_acm_certificate.this
LOG: Removing unchanged main resource: module.r53.module.zones.aws_route53_zone.this
LOG: Removing unchanged resources... Done.
LOG: Computing connections...
LOG: Removing unchanged resources...
LOG: Computing connections... Done.

there are a bunch of logs in the middle regarding resources that don't seem relevant to post here (removing inactive resources, aggregating and such) but let me know if you want to see those too.

Enhancement / Documentation Request: Gitlab-ci example

I think this is a wonderful addition, kudos! While I appreciate the github example, there was no easy equivalent for gitlab-ci since gitlab doesn't have a packaged 'github action' that abstracts the inputs . Is it possible to add a gitlab-ci example in the usage documentation / recipes?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.