:wave: Hi everyone! I am part of a Managed Service...
# general
c
👋 Hi everyone! I am part of a Managed Services team, we manage cloud infrastructure for our clients worldwide on Microsoft Azure. I found this awesome tool and have been experimenting with it over the past couple days, it works really well and could be very valuable for our team. One thing that is important to our team is Azure ARM/Bicep support, as 95% of our IaC is in Bicep. I saw that this is "on the roadmap", but really we as a team would like to contribute towards the project to help towards implementing this. We don't necessarily have any Go knowledge so this might be a bit ambitious, but we can see what we can do. I have left a comment on this GitHub issue asking for the best way to get started, can anyone help us out? Tomorrow we have our quarterly innovation day and hopefully I can get a team together to work towards prototyping something if the work seems doable. 🙂
w
👋 Hi @curved-animal-37854 sorry for the delay, I saw your github comment too and will get back to you today. We’ve been heads down implementing a much faster way for infracost to run on large mono repos that we often see in enterprises.
c
Thanks Ali! I'd love to see the response. 🙂
w
So our team is still focused on going deep into use-cases with Terraform (e.g. handling large mono repos, guardrails, cost policies) and once TF users are happy with those, we’d like to step back and enable the same use-cases for other IaC tools. Given the open source nature of the product, if you like you can do what another community member has done with Pulumi and prototype on a fork, e.g. see https://github.com/infracost/infracost/pull/1752 (is a good guide of the code areas that your team can look at). I’ll just set your expectations that we don’t have time to review/work on it yet. If you’d like to prototype, you can fork the CLI repo, start with a simple ARM template, this repo seems to have good examples, and just focus on the
breakdown
command to start with. Success would look like a user being able to run
infracost breakdown --path azuredeploy.json
and seeing the cost estimate. If you need to pass-in params, e.g. for the region or other inputs, you can add a CLI flag for that (in the same way
--terraform-var
or
--terraform-var-file
exists, or use env vars like
TF_VAR_myparam=myvalue
.
c
Thanks Ali, our team is working on something else today but I very much appreciate the rundown and will take a look at this later. :)
We will be looking into this tomorrow with a team of seven or eight. 🫶