Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.

If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!

Terraform private registry



  • UPDATE: Terraform Feeds are Now Available!

    Terraform Feeds are available as of ProGet 2024.20.

    Original post as follows...

    --

    The "Other feed types" documentation for ProGet doesn't currently have a listing for a Terraform Private Registry.

    It describes posting in the forums to register interest, which is the intention of this post.

    This would be very useful for versioned Terraform module support. A workaround by fetching archives over HTTP using a Universal Package feed does seem effective, but involves some additional steps within our CI/CD pipeline.


  • inedo-engineer

    Hi @jeff-miles_5073 ,

    Thanks for the first inquiry; I just updated the documentation! These must be "relatively new", and I know we've had a few customers using universal packages for this.

    We have some Terraform integrations on our roadmap for 2023, so this definitely something we'll look into on our own as well.

    Cheers,
    Alex



  • We're currently looking for a way to host our private terraform modules. Are there any news about terraform support?


  • inedo-engineer

    Hi @martin-helgesen_8100 ,

    Nothing new I'm afraid; you're the second user who's inquired about this so far.

    We do have several customers using Terraform and ProGet, either using universal packages (like @jeff-miles_5073 suggested) or using Asset Directories. We asked them a while back if they had interest for a "proper" Private Registry, and the response was that even if it was available... they likely wouldn't use it because it would involve changing their system, and they saw no benefit to a feed.

    We know basically nothing about Terraform and have done no research into the costs/complexity of implementing a registry. Do other products/vendors support this?

    The first "red flag" on my end is this:

    Terraform can use versioned modules from any service that implements the registry API. The Terraform open source project does not provide a server implementation, but we welcome community members to create their own private registries by following the published protocol.

    In our experience, documentation is almost always outdated and inaccurate. So this means lots of reverse-engineering of API protocols and lots of debugging.

    Not saying it's impossible, but we'd definitely need community support to make it happen. Check out how the rpm feeds came to be - if it's something you can prototype in Asset Directories (for example), that could go a long way in making it a first-class feed in ProGet :)

    Cheers,
    Steve



  • Hello! We have been creating our own, internal, Terraform modules and would like to host them internally. Casting my vote to have this implemented!


  • inedo-engineer

    Hi @kichikawa_2913 @jeff-miles_5073 @martin-helgesen_8100 ,

    Good news! We've got a Terraform Feed working on version 2024.20-rc.4 and it seems ready for release:

    879e6dd9-4bbd-435a-b2da-2a0f0c8e7b6b-image.png

    I'd love to get a second set of eyes on our approach and the docs; this was a really interesting protocol/API to work with because there are no "Terraform Packages" - basically everything is just a pointer to a GitHub repository.

    So, ProGet just packages it in a universal package and the Terraform CLI seems to be happy. What's a little unfortunate is that the hostname/feed need to be in the package, but that's also how Docker works. So I guess it can't be helped.

    Thanks,
    Alex


Log in to reply
 

Inedo Website HomeSupport HomeCode of ConductForums GuideDocumentation