Skip to content

NimTechnology

Trình bày các công nghệ CLOUD một cách dễ hiểu.

  • Kubernetes & Container
    • Docker
    • Kubernetes
      • Ingress
      • Pod
    • Helm Chart
    • OAuth2 Proxy
    • Isito-EnvoyFilter
    • Apache Kafka
      • Kafka
      • Kafka Connect
      • Lenses
    • Vault
    • Longhorn – Storage
    • VictoriaMetrics
    • MetalLB
    • Kong Gateway
  • CI/CD
    • ArgoCD
    • ArgoWorkflows
    • Argo Events
    • Spinnaker
    • Jenkins
    • Harbor
    • TeamCity
    • Git
      • Bitbucket
  • Coding
    • DevSecOps
    • Terraform
      • GCP – Google Cloud
      • AWS – Amazon Web Service
      • Azure Cloud
    • Golang
    • Laravel
    • Python
    • Jquery & JavaScript
    • Selenium
  • Log, Monitor & Tracing
    • DataDog
    • Prometheus
    • Grafana
    • ELK
      • Kibana
      • Logstash
  • BareMetal
    • NextCloud
  • Toggle search form

[Terraform] How to create or public a module terraform on the public registry

Posted on November 21, 2022January 3, 2023 By nim No Comments on [Terraform] How to create or public a module terraform on the public registry

Contents

Toggle
  • 1) Public a module terraform
  • 2) Exciting things are regarding terraform (helpful)
    • 2.1) Use conditionally created resource’s output

1) Public a module terraform

https://developer.hashicorp.com/terraform/registry/modules/publish#requirements

Bạn cần tạo 1 repo github public nhé

Cách đặt tên như sau:
Named terraform-<PROVIDER>-<NAME>
ví dụ như là: terraform-google-vault or terraform-aws-ec2-instance

Mính đã tạo: https://github.com/mrnim94/terraform-aws-eks-ebs-csi

Bạn cần tạo release để terraform sẽ thấy được tag của release đó

Dưới đây là module của mình
mrnim94/eks-ebs-csi/aws | Terraform Registry

Trong 1 folder của terraform bình thường thì sau khi lên module bạn cần bỏ cái j?
Backend.

Bạn cứ tạo 1 release là terraform module sẽ auto nhận

2) Exciting things are regarding terraform (helpful)

2.1) Use conditionally created resource’s output

https://stackoverflow.com/questions/56257169/terraform-how-to-use-conditionally-created-resources-output-in-conditional-op

You can access dynamically created modules and resources as follows

output "vpc_id" {
  value = length(module.vpc) > 0 ? module.vpc[*].id : null
}
  • If count = 0, output is null
  • If count > 0, output is list of vpc ids

If count = 1 and you want to receive a single vpc id you can specify:

output "vpc_id" {
  value = length(module.vpc) > 0 ? one(module.vpc).id : null
}
Terraform

Post navigation

Previous Post: [AWS] Creat Persistent Volume on EKS via EBS.
Next Post: [Coding] 10 VScode extensions cho Cloud/DevOps Engineer

More Related Articles

[Terraform] Use “IF/ELSE” through the Merge function in Terraform Terraform
[Terraform Issue] Blocks of type “precondition” are not expected here, or Optional object type attributes are experimental. Terraform
[Terraform] Lesson 11: Create GKE (kubernetes) on Google with Terraform GCP - Google Cloud
[Terraform] Lesson 1: Terraform with Google Cloud GCP - Google Cloud
[Terraform] Lesson 8: Cloud PubSub with Terraform GCP - Google Cloud
[Terraform] Lesson 10: NoSQL Database in GCP with Terraform GCP - Google Cloud

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Tham Gia Group DevOps nhé!
Để Nim có nhiều động lực ra nhiều bài viết.
Để nhận được những thông báo mới nhất.

Recent Posts

  • [Azure] The subscription is not registered to use namespace ‘Microsoft.ContainerService’ May 8, 2025
  • [Azure] Insufficient regional vcpu quota left May 8, 2025
  • [WordPress] How to add a Dynamic watermark on WordPress. May 6, 2025
  • [vnet/Azure] VNet provisioning via Terraform. April 28, 2025
  • [tracetcp] How to perform a tracert command using a specific port. April 3, 2025

Archives

  • May 2025
  • April 2025
  • March 2025
  • February 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023
  • March 2023
  • February 2023
  • January 2023
  • December 2022
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • July 2022
  • June 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021

Categories

  • BareMetal
    • NextCloud
  • CI/CD
    • Argo Events
    • ArgoCD
    • ArgoWorkflows
    • Git
      • Bitbucket
    • Harbor
    • Jenkins
    • Spinnaker
    • TeamCity
  • Coding
    • DevSecOps
    • Golang
    • Jquery & JavaScript
    • Laravel
    • NextJS 14 & ReactJS & Type Script
    • Python
    • Selenium
    • Terraform
      • AWS – Amazon Web Service
      • Azure Cloud
      • GCP – Google Cloud
  • Kubernetes & Container
    • Apache Kafka
      • Kafka
      • Kafka Connect
      • Lenses
    • Docker
    • Helm Chart
    • Isito-EnvoyFilter
    • Kong Gateway
    • Kubernetes
      • Ingress
      • Pod
    • Longhorn – Storage
    • MetalLB
    • OAuth2 Proxy
    • Vault
    • VictoriaMetrics
  • Log, Monitor & Tracing
    • DataDog
    • ELK
      • Kibana
      • Logstash
    • Fluent
    • Grafana
    • Prometheus
  • Uncategorized
  • Admin

Copyright © 2025 NimTechnology.