gruntwork-io / terragrunt

Terragrunt is a flexible orchestration tool that allows Infrastructure as Code written in OpenTofu/Terraform to scale.
https://terragrunt.gruntwork.io/
MIT License
8.09k stars 981 forks source link

Language Server for Terragrunt #2779

Open kevcube opened 1 year ago

kevcube commented 1 year ago

Language servers are helpful in development. A language server for Terragrunt that is aware of a whole directory of terragrunt components would be nice.

possible features

Describe alternatives you've considered I am not currently ready to start development on this so I am suggesting it

github-actions[bot] commented 1 month ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for raising this issue.

Chilinot commented 1 month ago

Not stale, still desired

josh-padnick commented 1 month ago

@Chilinot Does the solution at https://github.com/gruntwork-io/terragrunt/issues/2931#issuecomment-1930004840 address your need?

kevcube commented 1 month ago

Does the solution at #2931 (comment) address your need?

@josh-padnick as another user desiring this I can say no, not for me

I’m looking for some language server implementation that does more than just syntax highlighting. It would be great to resolve imports/includes, resolve dependencies and their outputs, resolve inputs for a module, and more.

josh-padnick commented 1 month ago

Got it, and that makes sense. Some initial research led us to conclude that LSP implementations are surprisingly expensive, and our current Terragrunt plate is already quite full, so we'd be open to sponsoring this work, both for initial development and potentially for ongoing maintenance.

Given that, we'd welcome guidance on either who might be interested in contributing (and possibly maintaining) this, potentially with Gruntwork sponsorship, or if there's a less expensive way to get something shipped here.

Thanks as always for your feedback.

jowharshamshiri commented 1 month ago

Hey guys, I had this same problem and was googling and landed on this issue page, so I put something quick together which works on my own Terragrunt projects and helps me navigate the dependencies but is by no means feature-complete, and has no test coverage yet.

Check it out. I will work more on this when I get the time to implement more features and all contributions are welcome. I am open to working more closely on this per your requirements.

Currently supported features include: