Git Product home page Git Product logo

iac-hc-terraform-terralist's Introduction

Terralist

Latest Release

Terralist Logo

A truly private Terraform registry

About

Terralist is a private Terraform registry for providers and modules following the published HashiCorp protocols. It provides:

  • A secure way to distribute your confidential modules and providers;
  • [Soon] A management interface to visualize documentation;

Highlights

  • Login Functionality (docs): Require a token to access the data. It is integrated with Terraform, so you can authenticate to the registry directly through Terraform:

    $ terraform login registry.example.com
    $ terraform logout registry.example.com
    

    It can also generate custom API keys for an authenticated user, which can be used in pipelines: to upload and delete modules and providers, to fetch data.

  • Modules Registry: (docs) Stores modules data in a private storage (for example, an S3 bucket). When download request is received, calls the remote storage to generate a temporary public download URL and forwards the URL to the requester. Currently supported private storage:

    • AWS S3: uses a private S3 bucket
    • Azure Blob: uses a private Azure Storage Account
    • Proxy: forwards the URL received at creation
  • Provider Registry: (docs) Similar with modules registry. Currently supported private storage:

    • AWS S3: uses a private S3 bucket
    • Azure Blob: uses a private Azure Storage Account
    • Proxy: forwards the URL received at creation

Note: For Proxy storage mode, the URL management is up to you. If, for example, you are providing a git URL, then the same URL will be forwarded to the requester (Terraform).

Note: Terralist uses the same library Terraform uses to make downloads (go-getter), meaning that you can still use your favorite protocols while using Terralist. This is also an advantage for the Proxy mode users, which can use the same source that they would normally put in Terraform.

Disclaimer

This project is not meant to replace the public Terraform Registry. Its purpose is to mimic the public registry in a private environment.

Documentation

Contributions

Each contribution is welcomed, if you want to contribute, open an issue or fork the repository and open a PR.

iac-hc-terraform-terralist's People

Contributors

valentindeaconu avatar dependabot[bot] avatar l2dy avatar manuinnz avatar mruz avatar arnosen avatar bkreitch avatar dominik-gubrynowicz avatar jsidney avatar vincentgna avatar canidam avatar getowic avatar

Watchers

James Cloos avatar

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.